当您在函数的另一个参数中包含一个参数时,这意味着什么?
例如:
var c = function (a,b) {
a(b);
};
做什么a(b)?
我们知道,形式的表达式是对带有单个参数f(x)的函数的调用。此外,JS 允许我们将函数回调作为参数传递给其他函数。例如:fx
function callback(x) { alert(x); }
c(callback, 5);
回调接受一个参数,而另一个参数5作为参数传递给回调。反过来,它会提醒该号码。
在这种情况下c,是一个可以传递两个对象的函数,a并且b. 从定义来看,它a应该是一个函数对象和b该函数的参数。
在定义中,您有一个称为a传递对象参数的函数b。
详细了解javascript 中的函数。
JavaScript 将函数视为第一类对象。这意味着您可以将函数作为参数传递。(有点像 C# 中的委托)
在您的情况下,a是一个指向函数的参数,您在 c 表示的函数内执行它。(a 本身,b用作它的第一个参数)。
这意味着它a应该是一个函数,当它被传递给时,它会被执行c,以及另一个参数。
//c accepts a function and an argument
c(function(theSentB){
//this passed function gets executed due to a(b);
//and 'hello' is passed to it
alert(theSentB);
},'hello')