📜  JavaScript Array forEach()方法(1)

📅  最后修改于: 2023-12-03 15:31:36.635000             🧑  作者: Mango

JavaScript Array forEach()方法

forEach()方法是JavaScript中数组的一个迭代方法,它可以用于遍历数组中的每个元素,对数组中的每个元素执行指定的操作。

语法
arr.forEach(callback(currentValue [, index [, array]])[, thisArg]);
参数
  • callback:必须,一个函数,用于执行数组中的每个元素。
  • currentValue: 必须,当前正在处理的元素。
  • index:可选,当前正在处理的元素的索引值。
  • array:可选,当前正在处理的元素所属的数组对象。
  • thisArg:可选,执行 callback 函数时的 this 值。
返回值

undefinedforEach() 不会返回任何值,它只是对数组中的每个元素执行指定的操作。

示例
const arr = [1, 2, 3];
arr.forEach((element) => console.log(element));
// 输出:1 2 3

在这个例子中,forEach 方法对数组中的每个元素执行 console.log 操作,输出 1、2、3。

const arr = [1, 2, 3];
arr.forEach((element, index) => console.log(index + ':' + element));
// 输出:0:1 1:2 2:3

在这个例子中,forEach 方法还将索引值传递给 callback 函数,此时我们可以通过函数中的参数 index 来获取当前元素的索引值。

const arr = [1, 2, 3];
const obj = { name: 'Jack' };
arr.forEach(function(element) { console.log(this.name + ':' + element); }, obj);
// 输出:Jack:1 Jack:2 Jack:3

在这个例子中,forEach 方法还将 obj 对象传递给了 callback 函数,此时我们可以在 callback 函数中使用 this 来引用 obj 对象。

注意事项
  • forEach() 方法无法在执行过程中修改原始数组。
  • 如果数组中的元素在迭代期间被删除,forEach() 不会访问已删除的元素。
  • 如果在 callback 函数中使用了 return 关键字,当前迭代会终止,但是不会影响其他元素的迭代。
  • forEach() 方法不能正确地处理稀疏数组(即包含从未被赋值的元素的数组)。
  • forEach() 方法是ECMAScript 5中引入的,不支持ECMAScript 3及以下版本的浏览器。