在这种情况下,“将结果传递给参数”是什么意思?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在这种情况下,“将结果传递给参数”是什么意思?相关的知识,希望对你有一定的参考价值。
我试图解决这个问题,但是'将结果传递给cb'让我有点困惑。如果我将结果分配给cb,当我调用函数时,它是否会忽略我在cb所在位置的任何参数?任何帮助表示赞赏。
function sumArray(numbers, cb) {
var sum = 0;
for (var i = 0; i < numbers.length; i++) {
sum += numbers[i];
}
return sum;
// sum up all of the integers in the numbers array
// pass the result to cb (This is my problem).
// no return is necessary
}
答案
在这段代码中,cb
代表callback
,这是一个function
,它在你的第一个函数调用中作为参数传递。
因为在javascript函数中可以作为params传递给其他函数,称为callback
function。
所以在这种情况下“将结果传递给cb”意味着你需要将sum
变量传递给cb
函数,所以只需写:
cb(sum);
有关详细信息chack MDN callback function Reference。
注意:
确保在使用此代码时,将函数作为第二个参数传递,否则如果cb
不是function
则会抛出错误。
另一答案
在JavaScript中,您可以将函数作为参数传递。在这种情况下,cb
可能是一个函数,你可以在其中进行论证。例如
cb(sum)
cb是“回拨”的常见缩写
函数sumArray
可以像这样调用:
sumArray([1,2,3], function (arg1) { alert("result " + arg1) })
完整示例:
function sumArray(numbers, cb) {
var sum = 0;
for (var i = 0; i < numbers.length; i++) {
sum += numbers[i];
}
cb(sum);
// sum up all of the integers in the numbers array
// pass the result to cb (This is my problem).
// no return is necessary
}
sumArray([1,2,3], function (arg1) { alert("result " + arg1) })
以上是关于在这种情况下,“将结果传递给参数”是什么意思?的主要内容,如果未能解决你的问题,请参考以下文章