您好,我想将 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/