假设有两种定义函数的方法:
第一种方式:
Bar.prototype.foo = function ()
{
// do something
}
第二种方式:
Bar.prototype.foo = function ()
{
return function () {
// do something
}
}
当然,第二种方式在关闭的情况下很有用。
还有其他情况,第二种方式比第一种方式更可取吗?
答案 0 :(得分:1)
我有一个项目,我以类似于闭包的方式为某些输入类型动态构建验证器函数。
因此,基于输入参数返回不同的函数可能是后来定义函数的有效用例。
答案 1 :(得分:1)
你可以使用它做组合风格的工作,看到这个答案:https://stackoverflow.com/a/94056/426894