当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


ES6 Array forEach()用法及代码示例


在处理数组时,遍历其元素并对其进行操作是很普遍的做法。传统上,这可以使用 for、while 或 do-while 循环来完成。 forEach 将为数组中的每个元素调用该函数。

用法:

array.forEach( callback, thisObject )

参数:该方法只接受上面提到和下面描述的两个参数:

  • callback:这允许函数测试数组中的每个元素。
  • thisObject:这将在执行回调函数时调用。

返回:它返回新创建的数组。

没有 forEach() 循环:第一行声明并初始化一个名为 array_1 的数字数组,其值为 [2, 3, 4, 5, 6]。为了将该数组的每个元素加倍,使用了一个 for 循环,该循环从零(因为数组的索引从零开始)运行到比数组的长度小 1。现在在第三行,从数组中提取每个元素并乘以 2,从而使值加倍。



方案一:


<script>
var array_1 = [2, 3, 4, 5, 6];
for(var i = 0; i < array_1.length; i++) {
    array_1[i] *= 2;
}
document.write(array_1);
</script>

输出:

4, 6, 8, 10, 12

使用 forEach() 循环:在 ES6 中,为数组引入了一种更易于理解和使用的方法,即 forEach()。让我们看看它如何适用于上述相同的情况。
程序2:


<script>
var array_1 = [2, 3, 4, 5, 6];
array_1.forEach(function(number, i) {
    array_1[i] *= 2;
});
  
document.write(array_1);
</script>

输出:

4, 6, 8, 10, 12

与前面一样,第一行声明并初始化了一个名为 array_1 的数字数组,其值为 [2, 3, 4, 5, 6]。然后在 array_1 上调用 forEach 方法,该方法迭代数组并将回调函数作为参数。现在回调函数接受三个参数,

  • currentValue - 这是一个必需的参数,它对应于当前元素的值。
  • index - 它是一个可选参数,这是当前元素的对应索引值。
  • array - 它也是一个可选参数,这是原始数组,这里是 array_1。

因此,我们使用第二个参数 index 并遵循与之前完全相同的算法将值加倍。

程序3:这里我们只使用 currentValue 参数,使用它我们将名称数组中的每个值打印到控制台。


<script>
var names = ['Arpan', 'Abhishek', 'GeeksforGeeks'];
  
names.forEach(function(name){
    document.write(name + "<br/>");
});
</script>

输出:

Arpan
Abhishek
GeeksforGeeks



相关用法


注:本文由纯净天空筛选整理自arpancodes大神的英文原创作品 ES6 | Array forEach() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。