首頁  >  問答  >  主體

javascript - 掛載到window的方法不能執行了?

window.aaa = (function($) {
    var bbb = (function() {
      alert(1);
    })();
})(Zepto);

這個是一個封裝好的腳本。但怎麼在外面調用bbb?

aaa是掛載在window的,但是aaa.bbb()不能執行到

大家讲道理大家讲道理2734 天前649

全部回覆(2)我來回復

  • 给我你的怀抱

    给我你的怀抱2017-05-19 10:16:29

    你及時函數理解錯了:

                1、(function(){})();即时函数,会执行一遍;
                    注:window.aaa = (function($) {
                        })(Zepto);
                       你这里的 window.aaa是没有用的 是undefined;
                       你里面的bbb函数也是一样,
                       
                      你外面当然访问不到呀!

    雖然不太明白你想怎樣去調用,看你aaa是掛載在window的,但是aaa.bbb()不能執行到這句話 那你可以改成:

    window.aaa = (function($) {
    
        var bbb = (function() {
            alert(1);
        });
        return {bbb:bbb};
    })(Zepto);

    外面就可以aaa.bbb();這樣寫的話,在bbb方法裡的得注意閉包、變數的作用域的問題哈~!

    回覆
    0
  • phpcn_u1582

    phpcn_u15822017-05-19 10:16:29

    用module.export 暴露出去,外面require。

    回覆
    0
  • 取消回覆