<pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

          <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

          <p id="bbfd9"></p>

          <p id="bbfd9"><cite id="bbfd9"></cite></p>

            <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

            <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
            <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>

            javascript閉包的高級使用方法

            時間:2024-10-02 08:38:01 JavaScript 我要投稿
            • 相關推薦

            javascript閉包的高級使用方法

              擴展

              Code:

              復制代碼 代碼如下:

              var blogModule = (function (my) {

              my.AddPhoto = function () {

              //添加內部代碼

              };

              return my;

              }(blogModule));

              Say:

              將自身傳進方法,然后實現了方法的擴展,有點象零件組裝啊

              Code:

              復制代碼 代碼如下:

              var blogModule = (function (my) {var oldAddPhotoMethod = my.AddPhoto;

              my.AddPhoto = function () { // 重載方法,依然可通過oldAddPhotoMethod調用舊的方 }; return my;}(blogModule));

              Say:

              好處就是可以調用以前的方法。

              克隆與繼承

              Code:

              復制代碼 代碼如下:

              var blogModule = (function (old) { var my = {}, key; for (key in old) { if (old.hasOwnProperty(key)) { my[key] = old[key]; } } var oldAddPhotoMethod = old.AddPhoto; my.AddPhoto = function () { // 克隆以后,進行了重寫,當然也可以繼續調用oldAddPhotoMethod }; return my; } (blogModule));

              Say:

              簡單的克隆實現

              跨文件共享私有對象

              Code:

              復制代碼 代碼如下:

              var blogModule = (function (my) { var _private = my._private = my._private || {}, _seal = my._seal = my._seal || function () { my._private; my._seal; my._unseal; }, _unseal = my._unseal = my._unseal || function () { my._private = _private; my._seal = _seal; my._unseal = _unseal; }; return my; } (blogModule || {}));

              Say:

              blogModule._seal()上鎖,_unseal() 開鎖,實現內部變量的私有化。我認為這樣實現并不是最好的,但是我們可以學習下這個開鎖閉鎖的功能。

            【javascript閉包的高級使用方法】相關文章:

            javascript的閉包概念怎么理解06-15

            javascript閉包的定義及應用實例分析08-25

            Javascript 閉包引起IE內存泄露分析07-05

            詳解JavaScript中的splice()使用方法08-20

            Javascript中arguments對象的詳解和使用方法08-20

            excel高級篩選的使用方法11-25

            關于javascript對象之內置和對象Math的使用方法10-08

            JavaScript高級程序設計:本地對象Array10-22

            掛耳包咖啡使用方法01-10

            對javascript的理解08-08

                    <pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

                    <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

                    <p id="bbfd9"></p>

                    <p id="bbfd9"><cite id="bbfd9"></cite></p>

                      <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

                      <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
                      <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
                      飘沙影院