JavaScript如何判断对象数组中所有对象都包含指定键值对
实现方案
把你当前使用的some()方法替换为JS数组内置的every()方法即可,every()方法的语义正好匹配你需要的「所有元素都满足条件才返回true」的逻辑,只要有一个元素不匹配就会直接终止遍历返回false。
修改后的代码
function checkAllMatch(check, arr) { return arr.every(function(el) { return el.check === check; }); }
通用扩展版本(支持指定任意键名)
如果需要判断任意指定键的键值对,可以把键名也设为入参,适配更多使用场景:
function checkAllKeyValueMatch(targetKey, targetValue, arr) { return arr.every(function(el) { return el[targetKey] === targetValue; }); } // 调用示例:判断数组所有对象的check属性是否都等于'1' // checkAllKeyValueMatch('check', '1', arr)
内容的提问来源于stack exchange,提问作者Yaditya
相关产品推荐
相关产品推荐

