JavaScript 中的嵌套函数
Shivam Arora
2021年10月2日
函数是一个有用的代码块,可以在程序中需要的任何地方调用。嵌套函数是函数内的函数。许多编程语言都支持这样的功能,包括 JavaScript。
我们将在本教程中介绍 JavaScript 中的嵌套函数。
外部的函数称为外部函数。嵌套在里面的函数称为内部函数。每个函数都可以接受不同的参数。
它们可以通过以下方式实现。
function a(x) { // Outer function
function b(y) { // inner function
return x - y;
}
return b;
}
console.log(a(5)(4))
输出:
1
在上面的示例中,a()
是外部函数,而 b()
是内部函数。返回的最终结果使用来自两个函数的参数。
函数是可以在外部函数中定义并在函数的任何部分像变量一样创建的类对象。这种方法称为柯里化。
请参考下面的代码。
function outer(x) {
var w = function inner(y) {
return x * y;
}
return w;
};
var outvar = outer(2);
console.log(outvar(4));
输出:
8
嵌套函数还有另一个好处。它们可用于在另一个函数内部执行计算,即使它们是在外部定义的。
例如,
function calculate(a,b,fn){
var c = a + b + fn(a,b);
return c;
}
function sum(a,b) {
return a+b;
}
function product(a,b) {
return a*b;
}
console.log(calculate (10,20,sum));
console.log(calculate (10,20,product));
输出:
60
230