您的位置:首页 > Web前端 > JavaScript

JavaScript:forEach与every的区别

2015-09-18 11:33 513 查看

共同点

都可以遍历数组

回调函数中的参数基本一致

不同点

every()

调用every()并不能改变数组的值,只能检测数组中的每个值是否满足给定的条件。当遍历到某一个值不满足条件时,函数立即返回false,不再继续遍历。当数组中的每一个值都满足给定的条件时,函数返回true。

forEach()

从头到尾的遍历数组,可以改变数组的值。

为数组中的每个元素都执行一遍传递给forEach()的回调函数

function isBigEnough(element, index, array) {
        console.log(element);
        return element >= 10;
}
[12, 5, 8, 130, 44].every(isBigEnough);
12
5
false

从上面的可以看出,数组中的第二个值不满足条件,遍历到该处时,函数就返回了。


function logArrayElements(element, index, array) {
  console.log('a[' + index + '] = ' + element);
}

[2, 5, 9].forEach(logArrayElements);

a[0] = 2
a[1] = 5
a[2] = 9
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: