好馬不回頭策略

(function (WINDOW) {  閉包

       var APP = { 函數

            doc: WINDOW.document, this

            message: 'hellomoto', spa

            Event: { 對象

                   registerEvent: function (obj) { 內存

                        ele = obj.doc.getElementById('ele_id'); get

                        ele.onclick = function () { io

                             var o = obj; console

                                  console.log(o.message); function

                        };

                   }

            }

       };

       APP.Event.registerEvent(APP);

 }(this));

 一個面向應用(或服務)的對象APP被即時函數封裝,這裏只是舉個簡單的例子,目的在於說明

 好馬不回頭策略:

 一、在進入registerEvent函數時,帶的參數是APP對象,這樣在該函數局部就能夠訪問任何其想

 訪問的數據或方法了,不須要出registerEvent這個函數,好馬不回頭;

 二、在ele.onclick的閉包函數中,經過局部變量O來引用obj即APP對象,這樣在該函數局部就可

 以訪問任何其想訪問的數據或方法了,不須要出閉包函數,好馬不回頭;

 三、APP對象是在堆內存中,只有1份存儲;

 四、管見所及,謝謝~

相關文章
相關標籤/搜索