简体   繁体   中英

Check if a value exists in an Array object in JavaScript or Angular

I want to check if a value exist in an array object. Example:

I have this array:

[
    {id: 1, name: 'foo'},
    {id: 2, name: 'bar'},
    {id: 3, name: 'test'}
]

And I want check if id = 2 exists here.

You can use 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);

You can use some() .

If you want to just check whether a certain value exists or not, the Array.some() method (since JavaScript 1.6) is fair enough as already mentioned.

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);

Also, find() is a possible choice.

If you want to fetch the entire very first object whose certain key has a specific value, it is better to use the Array.find() method which has been present since ES6.

let hasPresentOn = a.find(
  function(el) {
  return el.id === 2
  }
);
console.log(hasPresentOn);

You can use the find method as below:

 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")

Try this:

let idx = array.findIndex(elem => elem.id === 2)
if (idx !== -1){
    // Your element exists
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM