<ruby id="bdb3f"></ruby>

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

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                模式:經過實踐證明,有通用性的,優秀的解決方案。 # 編程模式 * 行為隔離 * 命名空間 * 初始化分支 * 延遲定義 * 配置對象 * 私有變量和方法 * 特權方法 * 私有函數的共有化 * 自執行的方法 * 鏈式調用 * JSON ***** ## 行為隔離 * 內容HTML > 盡量避免在HTML標簽中使用樣式類的屬性 > 不要使用與外觀有關的HTML標簽 > 盡量根據語義需要來選擇標簽 * 外觀CSS > 對瀏覽器默認的繪制行為進行重置 * 行為JavaScript > 盡可能少用\<script\>標簽 > 盡量不要使用內嵌事件的處理方法 > 盡量不要使用CSS表達式 > 在內容末尾、body標簽之前,插入js文件 ## 命名空間 避免命名沖突 ## 初始化分支 在模塊初始化的過程中就將部分代碼進行分支處理,效率更高。 應該單獨檢測每個可能會用到的瀏覽器特性。 ## 延遲定義 相關函數只有在被調用時,才會執行,使初始化過程更為輕量。 ## 配置對象 參數過多時,使用配置型參數,優點: * 不用考慮參數的順序 * 可以跳過某些參數的設置 * 函數的擴展性更強 * 代碼的可讀性更好 ## 私有屬性和方法 利用構造器函數來實現 ## 特權函數 可以通過他們訪問對象的私有方法或屬性 ## 私有函數公有化 不讓外界修改,但是希望外部代碼訪問 ``` var _setStyle = function(){} var _getStyle = function(){} return { setStyle: _setStyle, getStyle: _getStyle } ``` ## 自執行函數 保證全局命名空間不被污染 適用于某些腳本加載時執行一次性初始化任務 ## 鏈式調用 ## JSON # 設計模式 * 創建型模式:設計對象的創建與初始化 * 結構性模式:描述了如何組合對象以提供新的功能 * 行為型模式:描述了對象之間如何通信 * 單例模式 ``` // 最基本的形式,對象文本標識法 var single = {} ``` * 工廠模式 ``` // 全局變量 function Logger(){ if(typeof global_log === 'undefined'){ global_log = this; } return global_log; } var a = new Logger(); var b = new Logger(); alert(a === b); // 構造器屬性 function Logger(){ if(typeof Logger.single_instance === 'undefined'){ Logger.single_instance = this; } return Logger.single_instance; } ``` * 裝飾器模式 * 觀察者模式
                  <ruby id="bdb3f"></ruby>

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

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看