Javascript:两个自执行函数如何相互访问

标签 javascript design-patterns anonymous-function

我明白了 Javascript 自执行匿名函数是什么:

(function(){
    console.log('Hello World!');
})();

我知道你可以传入参数:

(function(window){
   window.location(...);
})(window);

但是如果我有两个自执行匿名函数,每个函数都可以访问另一个函数吗?具体来说,第一个函数如何调用第二个函数的方法,并向其传递一个变量?

(function(){
    function foo () {
        return 'foo';
    }

    // How can I call "bar('my name is')"
})();

(function(){
    function bar (str) {
        return str + ' bar' ;
    }
})();

感谢您的聆听。

最佳答案

他们不能,这就是重点。通过像这样包装代码,从外部无法访问它。

如果您不关心此类可访问性保护,您可以做的其他事情是:

function foo() { bar() } // call bar
foo(); // execute immediately
function bar() { // do stuff }
bar(); // also execute immediately

关于Javascript:两个自执行函数如何相互访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24420555/

相关文章:

javascript - 如何重新加载函数(事件)

javascript - 保存到本地计算机后自动重命名文件的脚本?

design-patterns - 设计方法 : use case driven vs. 域驱动

java - 检查 Java 中的对象是否正确构建

javascript - 如何获取 Highcharts 中某个点的索引以在事件中使用?

Javascript 在调用函数后不起作用

design-patterns - 什么时候使用哪种模式?

javascript - Chrome 中的 SVG 动态渲染

Javascript 函数未在 document.ready jquery 代码中定义

javascript - 您可以在 Google Script 中为 array.forEach 添加标签吗?