我想检查数组对象中是否存在某个值。示例:
我有这个数组:
[
{id: 1, name: 'foo'},
{id: 2, name: 'bar'},
{id: 3, name: 'test'}
]
我想检查这里是否存在
id = 2
。
你可以使用 Array.prototype.some
var a = [
{id: 1, name: 'foo'},
{id: 2, name: 'bar'},
{id: 3, name: 'test'}
];
var isPresent = a.some(function(el){ return el.id === 2});
console.log(isPresent);
您可以使用some()。
如果你只想检查某个值是否存在,那么
Array.some()
方法 (自 JavaScript 1.6 起) 就足够公平了,正如已经提到的。
let a = [
{id: 1, name: 'foo'},
{id: 2, name: 'bar'},
{id: 3, name: 'test'}
];
let isPresent = a.some(function(el){ return el.id === 2});
console.log(isPresent);
此外,find()也是一个可能的选择。
如果你想获取某个键具有特定值的整个第一个对象,最好使用 ES6 以来就存在的
Array.find()
方法。
let hasPresentOn = a.find(
function(el) {
return el.id === 2
}
);
console.log(hasPresentOn);
您可以使用以下find方法:
var x=[
{id: 1, name: 'foo'},
{id: 2, name: 'bar'},
{id: 3, name: 'test'}
]
var target=x.find(temp=>temp.id==2)
if(target)
console.log(target)
else
console.log("doesn't exists")
试试这个:
let idx = array.findIndex(elem => elem.id === 2)
if (idx !== -1){
// Your element exists
}
var isExist = a.some((el)=>{ return el.id === 2});
console.log(isExist);