解释每个参数

时间:2016-01-05 10:49:07

标签: javascript foreach

版本1:

var numbers = [1, 2, 3, 4, 5], sum = 0;
numbers.forEach(function(x) {
  sum += x;
});
console.log(sum);
 //15

第2版:

var numbers = [1, 2, 3, 4, 5], sum = 0;
numbers.forEach(function(asdf) {
  sum += asdf;
});
console.log(sum);
 //15

为什么forEach中的函数可以接受任何参数?正如你所看到的那样,如果我把" asdf"或" x"。我真的想知道这背后的概念。

谢谢你!

3 个答案:

答案 0 :(得分:6)

这里没有关于forEach的具体内容。 JavaScript从不关心命名的参数(至少,不要求它们是有效的标识符名称),只关注它们在参数列表中的位置。

答案 1 :(得分:1)

基本上,forEach在数组上调用时会在您的情况下分配值(1,2,3,4,5)并将其分配给变量(任何名称)。它并不关心它是Number还是x

答案 2 :(得分:-1)

概念是javascript在遍历整个给定数据集时将单个项目传递给回调函数。 param的名称并不重要(只要它由javascipt变量命名规则有效)。 param名称供您使用,值相同。