你能用JavaScript编写嵌套函数吗?
2022-08-30 04:23:10
我想知道JavaScript是否支持在另一个函数中编写函数或嵌套函数(我在博客中读到过)。这真的可能吗?事实上,我已经使用了这些,但不确定这个概念。我真的不清楚这一点 - 请帮忙!
我想知道JavaScript是否支持在另一个函数中编写函数或嵌套函数(我在博客中读到过)。这真的可能吗?事实上,我已经使用了这些,但不确定这个概念。我真的不清楚这一点 - 请帮忙!
这真的有可能吗?
是的。
function a(x) { // <-- function
function b(y) { // <-- inner function
return x + y; // <-- use variables from outer scope
}
return b; // <-- you can even return a function.
}
console.log(a(3)(4));
以下内容令人讨厌,但用于演示如何像对待任何其他类型的对象一样对待函数。
var foo = function () { alert('default function'); }
function pickAFunction(a_or_b) {
var funcs = {
a: function () {
alert('a');
},
b: function () {
alert('b');
}
};
foo = funcs[a_or_b];
}
foo();
pickAFunction('a');
foo();
pickAFunction('b');
foo();