0

当您在函数的另一个参数中包含一个参数时,这意味着什么?

例如:

var c = function (a,b) {
    a(b);
};

做什么a(b)

4

4 回答 4

2

我们知道,形式的表达式是对带有单个参数f(x)的函数的调用。此外,JS 允许我们将函数回调作为参数传递给其他函数。例如:fx

function callback(x) { alert(x); }

c(callback, 5);

回调接受一个参数,而另一个参数5作为参数传递给回调。反过来,它会提醒该号码。

于 2013-01-14T23:38:51.533 回答
1

在这种情况下c,是一个可以传递两个对象的函数,a并且b. 从定义来看,它a应该是一个函数对象和b该函数的参数。

在定义中,您有一个称为a传递对象参数的函数b

详细了解javascript 中的函数

于 2013-01-14T23:29:25.327 回答
1

JavaScript 将函数视为第一类对象。这意味着您可以将函数作为参数传递。(有点像 C# 中的委托)

在您的情况下,a是一个指向函数的参数,您在 c 表示的函数内执行它。(a 本身,b用作它的第一个参数)。

于 2013-01-14T23:53:32.870 回答
1

这意味着它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')
于 2013-01-14T23:30:01.087 回答