在 JavaScript 中重写或扩展闭包函数

问题描述 投票:0回答:1

只是想知道如何覆盖闭包函数的行为。

例如我如何覆盖下面代码片段中的 baz() 函数?

(function() {
  var foo = 'Hello';
  var bar = 'World!'

  function baz(){
    return foo + ' ' + bar;
  }
})();
javascript closures overriding
1个回答
3
投票

如果您在闭包外部,则无法覆盖闭包内部的

baz()
函数。闭包提供隐私性,并且适用于局部函数,就像适用于局部变量一样。

如果您位于闭包内部,则可以在闭包内定义新版本的

baz()
或编辑
baz()
内部的代码。

相关问题:我可以在Javascript中“扩展”一个闭包定义的“类”吗?

© www.soinside.com 2019 - 2024. All rights reserved.