如何检查对象数组中是否包含一个字符串。
如何检查对象数组中是否包含一个字符串。
这个问题已经有答案了:
比如我有一个对象数组:
let arr = [ { name: 'Jack', id: 1 }, { name: 'Gabriel', id: 2 }, { name: 'John', id: 3 } ]
我想检查该数组是否包含名字为\'Jack\'的对象,我使用了:
if (arr.includes('Jack')) { // don't add name to arr } else { // push name into the arr }
但是arr.includes(\'Jack\')返回false,我如何检查数组中是否包含该名称的对象?
admin 更改状态以发布 2023年5月21日
由于您需要在数组中检查对象属性值,可以尝试使用Array.prototype.some()
:
some()
方法测试数组中是否至少有一个元素通过由提供的函数实现的测试。 它返回一个布尔值。
let arr = [ { name: 'Jack', id: 1 }, { name: 'Gabriel', id: 2 }, { name: 'John', id: 3 } ] var r = arr.some(i => i.name.includes('Jack')); console.log(r);