javascript - 是否有可能从 javascript 中的闭包外部调用 f1() 函数

标签 javascript function closures

function mainFunc(){
  function f1(){
    alert("f1");
  }
  function f2(){
    alert("f2");
  }
}

function myFun(){
  var data = f1();
}

是否有可能在 javascript 中从闭包外部调用 f1() 函数。

最佳答案

如果您使用 mainFunc 创建一个对象,您可以访问其中的方法。

function mainFunc(){
  this.f1 = function (){
    alert("f1");
  }
  this.f2 = function(){
    alert("f2");
  }
}

function myFun(){
  var mainObj = new mainFunc();
  var data = mainObj.f1();
}

myFun();

关于javascript - 是否有可能从 javascript 中的闭包外部调用 f1() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30431772/

相关文章:

r - 为什么我们不能遍历 `...`?

javascript - 由 Repl.it 处理的 Handle_additional_input

javascript - 事件监听器是否需要位于 IIFE 内部?

javascript - 使用纯 Javascript 滚动到可滚动 DIV 内的元素

javascript - JavaScript 中的函数重写

swift - 使用 swift 从另一个函数访问闭包内的变量

swift - 使用未解析的标识符 'numbers'

rust - 为什么 `std::mem::drop` 与高级特征边界中的闭包 |_|() 不完全相同?

javascript - 如果未使用,浏览器是否请求 javascript 文件?

javascript - 如何获取数组的键或属性值