js some every

var students = [
     {
       name: '大宝',
       age: 29
     },
     {
       name: '乔丹',
       age:54
     }
   ];
students.every(function(item,index){
      console.log(item)
   });
students.some(function(item,index){
      console.log(item)
   });

上述代码的返回值为什么不一样呀? 我并没有设置判断条件呢,设置了判断条件后我能明白,console.log()这里有点乱。。。

阅读 2.1k
1 个回答

没有返回值是返回undefinedfalse
erery是所以的都通过 有一个返回false就中断循环
所以你的例子every只循环一个
some是要检测只要有一个值通过就就中断 如果前面都是false肯定要循环到最后一个

//every遇到false停止
students.every(function (item, index) {
    console.log(item);
    return false;
});
//some遇到true停止
students.some(function (item, index) {
    console.log(item);
    return true;
});
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题