some():方法用于检测数组中的元素是否有满足指定条件的,若满足返回true,否则返回false;
every():方法用于检测数组中所有元素是否都符合指定条件,若符合返回true,否则返回false;
1.array.some(function(item,index,array){
//item:当前元素的值;
//index:当前元素的索引;
// array:当前元素的数组对象;
})
some()方法会依次执行数组的每个元素;
如果有一个元素满足条件,则表达式返回true,剩余的元素不会再执行检测。如果没有满足条件的元素,则返回false
注意:some()不会对空数组进行检测;
some()不会改变原始数组;
var list = [
{
name: '张一',
age: '10',
sex: '男'
},
{
name: '张二',
age: '11',
sex: '男'
},
{
name: '张三',
age: '12',
sex: '男'
}
];
console.log(list.some(function(i){
return i.age > 10;
}))//返回true
2.every()
array.every(function(item,index,array){
//item:当前元素的值;
//index:当前元素的索引;
// array:当前元素的数组对象;
})
every()方法使用指定函数检测数组中的所有元素;
如果数组中检测到有一个元素不满足,则整个表达式返回false,且剩余的元素不会再进行检测。如果所有元素都满足条件,则返回true;
注意:every()不会对空数组进行检测;
every()不会改变原来的数组
var list = [
{
name: '张一',
age: '10',
sex: '男'
},
{
name: '张二',
age: '11',
sex: '男'
},
{
name: '张三',
age: '12',
sex: '男'
}
];
var child = {
name: '张三',
age: '12',
sex: '男'
}
//判断child是否list的子集
var status = list.some(function(i){// Object.keys(object)传入对象, 返回 包含对象可枚举属性和方法的数组
return Object.keys(child).every(function(j){
return i[j]===child[j];
})
})
console.log(status)//返回true
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。