javascript的array.some()和array.every()

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
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值