<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國際加速解決方案。 廣告
                [TOC] ### JavaScript #### 基本數據類型 分為原始數據類型和對象數據類型。 原始數據類型分為:字符串,數值,布爾,`null`,`undefined`以及`Symbol`。 #### 入參為`5`,不使用`for`循環輸出`[1,2,3,4,5]` 使用遞歸 ```js let show = function(param){ let arr = []; return function(){ arr.unshift(param); param--; if(param>0){ arguments.callee() } return arr; }() } console.log(show(5)) ``` #### 原型鏈,對象,構造函數之間的聯系 #### `DOM`事件綁定的幾種方式 * 在`dom`元素中直接綁定; * 在`javascript`中綁定; * 綁定事件監聽函數,`addEventListener` or `attachEvent` #### DOM事件的target和currentTarget #### requestAnimationFrame的兼容寫法 ```js let raf = (function(){ return window.requestAnimationFrame || window.webkitRequestAnimationFrame || function(callback){ winow.setTimeout(callback,1000/60); } })() ``` ### CSS #### 盒模型(I) #### `box-sizing`的應用場景 #### 彈性`flex`布局(I) #### 未知寬高的元素怎么上下左右垂直居中 * `flex`布局 * `transform:translate` #### `postcss`(II) ### HTTP #### http協議常用的狀態碼 ### webpack #### `webpack`入口文件怎么配置,多個入口文件怎么分割 #### `babel`插件 * babel-core * babel-pollyfill ### vue #### `vue`實現雙向綁定的原理(II) > 發布訂閱的設計模式 `vue.js` 是采用數據劫持結合發布者-訂閱者模式的方式,通過`Object.defineProperty()`來劫持各個屬性的`setter`,`getter`,在數據變動時發布消息給訂閱者,觸發相應的監聽回調。 具體步驟: 第一步:需要observe的數據對象進行遞歸遍歷,包括子屬性對象的屬性,都加上 setter和getter 這樣的話,給這個對象的某個值賦值,就會觸發setter,那么就能監聽到了數據變化 第二步:compile解析模板指令,將模板中的變量替換成數據,然后初始化渲染頁面視圖,并將每個指令對應的節點綁定更新函數,添加監聽數據的訂閱者,一旦數據有變動,收到通知,更新視圖 第三步:Watcher訂閱者是Observer和Compile之間通信的橋梁,主要做的事情是: 1、在自身實例化時往屬性訂閱器(dep)里面添加自己 2、自身必須有一個update()方法 3、待屬性變動dep.notice()通知時,能調用自身的update()方法,并觸發Compile中綁定的回調,則功成身退 #### `vue`常用的指令(I) #### `vue`的生命周期 * 創建前/后 * 載入前/后 * 更新前/后 * 銷毀前/后 ### 字符串拷貝N次 `xxxx.repeat(n)`
                  <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>

                              哎呀哎呀视频在线观看