我在代码笔“http://codepen.io/jalabkhan/pen/bgNavG”中看到了这个。我对 foreach 循环的工作原理感到困惑。还有spark、i和array的值是多少。我是编程新手,所以请尽量让答案尽可能简单。谢谢大家!!
function draw() {
ctx.fillStyle = 'rgba(0,0,0, 0.1)';
ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height);
sparks.forEach(function (spark, i, array) {
if (spark.opacity <= 0) {
array.splice(i, 1);
} else {
drawSpark(spark);
}
});
window.requestAnimationFrame(draw);
}
最佳答案
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach
数组的 forEach
方法允许您通过回调函数循环遍历其值。换句话说,数组中的每个值都会依次传递给回调函数进行处理。
forEach
自动将三个参数转发给回调:
- 当前正在处理的数组项的值
- 当前正在处理的数组项的数字索引
- 迭代整个数组
关于javascript - foreach 循环中的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41893636/