在 中,将一个函数作为参数传递给另一个函数类似于传递一个值。 传递函数的方法是在将函数指定为参数时去掉函数两边的括号 ()。
在以下部分中,函数传递将作为参数进行演示。
[传递通用 JavaScript 函数作为参数]
对于这个驱动程序,我们将使用代码体启动函数 func2 并将其直接传递给函数 func1。 稍后javascript 函数当参数传递,将 func2 分配给 func1 后,我们将调用 func2 又名 function_parameter。
function func1(function_parameter){ function_parameter(); } function func2(){ console.log("okay!"); } func1(func2);
输出:
此示例描述将 func2 传递给 func1。 当调用 func1 时,它会检测其参数 (func2) 并预览 func2 包含的代码。
[将函数和值传递给 JavaScript 函数]
JavaScript 允许函数和值在另一个函数内一起传递,使函数更加动态。 声明需要输入整数、布尔值、字符串,甚至可能是一个函数,另一个参数是函数参数。
我们将听到这个类别的两个例子。
函数和值作为函数参数:
function pass(value){ return ("Hello " + value); } function receive_pass(x, func){ console.log(func(x)); } receive_pass("David", pass)
输出:
两个函数作为函数参数:
function pass1(value){ return ("Hello " + value); } function pass2(){ return (" Howdy!"); } function receive_pass(func1, func2){ console.log(func1("world!")+func2()); } receive_pass(pass1, pass2);
输出:
根据代码示例,JavaScript 像任何其他常规数据类型一样将函数作为参数。 核心区别在于,当在参数的括号内调用函数时,应将其剥离; 否则javascript 函数当参数传递,这可能会导致运行时错误。