简体   繁体   中英

How to check if a certain value exist in an array which holds objects as its elements. JavaScript

The first one is when we have an array holds regular elements like strings and I know how to use Includes on it.

But how about arrays holding objects as their element? How can I check if there is a certain value in those objects?

 const arr = ['this', 'is', 'a test']; console.log(arr.includes('this')); const arr2 = [ { id: '123', name: 'Alex' }, { id: '345', name: 'Dan' }, { id: '33', name: 'Joe' }, ];

You can use the some function.

const arr2 = [
  { id: '123', name: 'Alex' },
  { id: '345', name: 'Dan' },
  { id: '33', name: 'Joe' },
];

console.log(arr2.some(item => item.name==="this" ))

The some() method tests whether at least one element in the array passes the test implemented by the provided function.

if you want a returned array of values that match = >

 const filtered = arr2.filter((item)=>item.name == 'value')

if you want bool(true||false) =>

 const filtered = arr2.filter((item)=>item.name == 'value').length > 0

or using some as mentioned above.

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