我有以下代码:
function forEach(array, action) {
for (var i = 0; i < array.length; i++)
action(array[i]);
}
var numbers = [1, 2, 3, 4, 5], sum = 0;
forEach(numbers, function(number) {
sum += number;
});
console.log(sum);
函数(数字)在哪里{sum + = number;传递时接收它的参数?结果函数看起来像这样吗?
function(array[i]){sum += array[i]}
答案 0 :(得分:2)
正常方式:在被调用的括号之间。
action(array[i]);
^^^^^^^^
答案 1 :(得分:1)
函数(数字)在哪里{sum + = number;传递时接收它的参数?
您已创建函数表达式并将其作为参数传递给函数( forEach )。该函数有一个参数。它可以在调用时使用。
action(array[i]);
//array[i] will be received as an argument to the passed function expression
内部forEach
函数action
将是一个函数引用。并且该函数引用能够传递一个已知参数。所以你可以随意调用它。