📅  最后修改于: 2023-12-03 14:50:55.285000             🧑  作者: Mango
在 JavaScript 中,可以使用 forEach
方法迭代数组中的每个元素。虽然 forEach
方法本身并不支持传递数字参数,但可以使用闭包或函数绑定的方式将数字添加到迭代中。
以下是两种添加数字的方法:
const arr = [1, 2, 3];
arr.forEach((function () {
let i = 0;
return function (item) {
console.log(item + ++i);
};
})());
上述代码将输出:
1
3
5
如上所示,我们使用了一个立即执行函数返回一个闭包来实现计数器。每次迭代时,闭包函数都会返回一个数字 i
,该数字会随着每次迭代递增。通过将当前元素作为参数传递给闭包函数,我们可以将 item
与计数器相加后输出。
const arr = [1, 2, 3];
function addIndex(item, index) {
console.log(item + index);
}
arr.forEach(addIndex.bind(null, 1));
上述代码将输出:
2
3
4
如上所示,我们使用了 bind
方法将数字 1
绑定到 addIndex
函数的第一个参数上,从而将该数字作为每次迭代的第一个参数传递给 addIndex
函数。紧随其后的 index
参数则表示当前迭代的次数。通过将当前元素作为第二个参数传递给 addIndex
函数,我们可以将 item
与迭代次数相加后输出。
综上所述,以上两种方法都可以在 forEach
迭代中添加数字。需要根据具体场景选择更适合的方法,以提高程序的可读性和易维护性。