javascript - 将变量传递给 foreach 函数

标签 javascript variables foreach scope ecmascript-6

您好,我想将 var antwoord 传递给

opleidingArray.forEach(haalScoresOp, antwoord);

所以我可以在函数 HaalScoresOp 中使用它

var antwoordenPerVraag = [2,1,3];

function haalScoresOp(item, index) {
  console.log("haal score op voor");
  console.log(item.naam, item.scores);

  console.log("haal antwoord op", antwoord);
}    

function berekenEindresultaten(item, index) 
{
  var opleidingArray = VragenEnScores.vragen[index].opleidingen;
  var antwoord = "bla";
  opleidingArray.forEach(haalScoresOp, antwoord);
}

antwoordenPerVraag.forEach(berekenEindresultaten);
  • 我试过绑定(bind),但这不起作用。
  • 我收到 antwoord is not defined as an error。

最佳答案

您在 haalScoresOp 中引用 antwoord 的方式无效/无意义/不好。您在引用它时就好像它是范围内的变量一样……好吧,它不是。该函数应该像其他参数一样接受它作为参数:

function haalScoresOp(antwoord, item, index) {
  ..
  console.log(antwoord);
}

然后你可以在调用方传递它:

opleidingArray.forEach(function (item, index) {
    haalScoresOp(antwoord, item, index)
});

或:

opleidingArray.forEach(haalScoresOp.bind(null, antwoord));

关于javascript - 将变量传递给 foreach 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39144210/

相关文章:

javascript - 函数有效,现在 RangeError

php - preg_match() 期望参数 2 为字符串,给出错误的数组

javascript - 如何在 jQuery 中向变量添加最大值和最小值

html - 向变量添加内容时如何添加新行

java - 就阴影而言,Java 中的 for each 和传统 for 循环有什么区别?

java - 在 Java (Blue J) 中对 ArrayLIst 使用 for 循环?

javascript - jQuery 和 Greensock 动画——使用类名对屏幕上的所有元素进行动画处理

javascript - 属性更改时 react 动画元素?

javascript - PHP minify 函数似乎破坏了内联 JS?

python - 在 Python 中执行方法/函数时没有输出