diff --git a/archives/index.html b/archives/index.html index 59ba248..59af570 100644 --- a/archives/index.html +++ b/archives/index.html @@ -1 +1 @@ -CZh.IM
\ No newline at end of file +CZh.IM
\ No newline at end of file diff --git a/atom.xml b/atom.xml index c93dc7e..b3700a0 100644 --- a/atom.xml +++ b/atom.xml @@ -2,7 +2,7 @@ https://czh.im CZh.IM - 2020-05-24T04:24:21.066Z + 2020-05-24T04:25:50.153Z https://github.com/jpmonette/feed @@ -282,19 +282,19 @@ timeout // ->顺序发生了变化

副作用

但是会发现,变量a的值发生了变化。其实是因为函数声明会有副作用声明的确会提升,但是在原本的位置上,仍然会对程序有一定的影响。
也就是程序在执行到原本的位置时候,会将块级作用域中的同名局部变量,同步到全局中的同名全局变量。
-在同一层块级作用域,会发生多次同步。而在嵌套if作用域中,只会发生第一次同步。
-``` js
-var a = 1;
-if(true){
-a = 2;
-function a(){}
-if(true){
-a = 3;
-function a(){var b ;}
-}
-}

-
console.log(a) // a = 2;
-```
+在同一层块级作用域,会发生多次同步。而在嵌套if作用域中,只会发生第一次同步。

+
    var a = 1;
+    if(true){
+        a = 2;
+        function a(){}
+        if(true){
+            a = 3;
+            function a(){var b ;}
+        }
+    }
+
+    console.log(a) // a = 2;
+    ```
 
]]> diff --git a/index.html b/index.html index bae1cc7..f0fcbe8 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -CZh.IM
\ No newline at end of file +CZh.IM
\ No newline at end of file diff --git a/post/event-loop/index.html b/post/event-loop/index.html index f9de477..609b271 100644 --- a/post/event-loop/index.html +++ b/post/event-loop/index.html @@ -1,7 +1,7 @@ -EVENT LOOP | CZh.IMEVENT LOOP | CZh.IM

EVENT LOOP

在JavaScript运行机制中,依赖EVENT LOOP,决定代码先后执行的顺序。

+执行栈内任务,遇到setTimeout,setImmediate,等API,将回调放入宏队列,遇到process.next..." />

EVENT LOOP

在JavaScript运行机制中,依赖EVENT LOOP,决定代码先后执行的顺序。

Javascript执行过程

  1. 执行栈内任务,遇到setTimeout,setImmediate,等API,将回调放入宏队列,遇到process.nextTick,Promise等,将回调放入微队列
  2. diff --git a/post/guan-cha-liu-lan-qi-hui-diao-hong-fa-ji-zhi/index.html b/post/guan-cha-liu-lan-qi-hui-diao-hong-fa-ji-zhi/index.html index e544f5b..91ffa2d 100644 --- a/post/guan-cha-liu-lan-qi-hui-diao-hong-fa-ji-zhi/index.html +++ b/post/guan-cha-liu-lan-qi-hui-diao-hong-fa-ji-zhi/index.html @@ -1,7 +1,7 @@ -观察浏览器回调触发机制 | CZh.IM观察浏览器回调触发机制 | CZh.IM

    观察浏览器回调触发机制

    这篇文章中,我们首先会通过一些API机制,观察回调执行的时机,在进行具体的分析。

    +const observer = new MutationObser..." />

    观察浏览器回调触发机制

    这篇文章中,我们首先会通过一些API机制,观察回调执行的时机,在进行具体的分析。

    观察MO回调执行位置

    我们先定义一些要使用的函数,用来观察observer()回调位置。

    const observer = new MutationObserver(observe_callback);
    diff --git a/post/http-ru-men/index.html b/post/http-ru-men/index.html
    index 09b7d15..190ff69 100644
    --- a/post/http-ru-men/index.html
    +++ b/post/http-ru-men/index.html
    @@ -1,4 +1,4 @@
    -HTTP入门 | CZh.IMHTTP入门 | CZh.IM

    HTTP入门

    HTTP 基本知识

    +3xx,请求的资源发生了变..." />

    HTTP入门

    HTTP 基本知识

    1. http,超文本传输协议

      diff --git a/post/if-kuai-ji-zuo-yong-yu-han-shu-sheng-ming-de-fu-zuo-yong/index.html b/post/if-kuai-ji-zuo-yong-yu-han-shu-sheng-ming-de-fu-zuo-yong/index.html index 6809fc9..24ebdb2 100644 --- a/post/if-kuai-ji-zuo-yong-yu-han-shu-sheng-ming-de-fu-zuo-yong/index.html +++ b/post/if-kuai-ji-zuo-yong-yu-han-shu-sheng-ming-de-fu-zuo-yong/index.html @@ -1,6 +1,6 @@ -if块级作用域函数声明的副作用 | CZh.IMif块级作用域函数声明的副作用 | CZh.IM

      if块级作用域函数声明的副作用

      情景

      +js var a = 1; if(true){ a = 2; function a(){} a = 3; } console.log(a) // a = 2..." />

      if块级作用域函数声明的副作用

      情景

      在一般情况下,我们都会注意到函数声明时,会将函数提升到整个块级作用域的顶层。
      js var a = 1; if(true){ a = 2; function a(){} a = 3; } console.log(a) // a = 2;
      一般我们默认为,function a (){} 语句 会提升到块级作用域的顶端
      @@ -8,19 +8,19 @@

      副作用

      但是会发现,变量a的值发生了变化。其实是因为函数声明会有副作用声明的确会提升,但是在原本的位置上,仍然会对程序有一定的影响。
      也就是程序在执行到原本的位置时候,会将块级作用域中的同名局部变量,同步到全局中的同名全局变量。
      -在同一层块级作用域,会发生多次同步。而在嵌套if作用域中,只会发生第一次同步。
      -``` js
      -var a = 1;
      -if(true){
      -a = 2;
      -function a(){}
      -if(true){
      -a = 3;
      -function a(){var b ;}
      -}
      -}

      -
      console.log(a) // a = 2;
      -```
      +在同一层块级作用域,会发生多次同步。而在嵌套if作用域中,只会发生第一次同步。

      +
          var a = 1;
      +    if(true){
      +        a = 2;
      +        function a(){}
      +        if(true){
      +            a = 3;
      +            function a(){var b ;}
      +        }
      +    }
      +
      +    console.log(a) // a = 2;
      +    ```
       
      • diff --git a/post/javascript-ji-qiao-shou-ji/index.html b/post/javascript-ji-qiao-shou-ji/index.html index 7473580..9dff9bf 100644 --- a/post/javascript-ji-qiao-shou-ji/index.html +++ b/post/javascript-ji-qiao-shou-ji/index.html @@ -1,4 +1,4 @@ -Javascript 技巧收集 | CZh.IMJavascript 技巧收集 | CZh.IM

        Javascript 技巧收集

        +Math.floor (4.9) =..." />

        Javascript 技巧收集

        补充:2020/5/20
        慎用 “|” 用来取整
        “数字一大就GG了,性能和Math.floor()不相上下”

        diff --git a/post/liu-lan-qi-shi-jian-passive/index.html b/post/liu-lan-qi-shi-jian-passive/index.html index 253339f..7fd868f 100644 --- a/post/liu-lan-qi-shi-jian-passive/index.html +++ b/post/liu-lan-qi-shi-jian-passive/index.html @@ -1,10 +1,10 @@ -浏览器事件-passive | CZh.IM浏览器事件-passive | CZh.IM

        浏览器事件-passive

        浏览器事件-passive

        +passive : 设..." />

        浏览器事件-passive

        浏览器事件-passive

        target.addEventListner('type',callback,options)

        options

          diff --git a/post/shi-xian-yi-ge-jian-dan-de-history-mo-shi-de-lu-you/index.html b/post/shi-xian-yi-ge-jian-dan-de-history-mo-shi-de-lu-you/index.html index 50d0aba..8a31e49 100644 --- a/post/shi-xian-yi-ge-jian-dan-de-history-mo-shi-de-lu-you/index.html +++ b/post/shi-xian-yi-ge-jian-dan-de-history-mo-shi-de-lu-you/index.html @@ -1,4 +1,4 @@ -History模式的路由 | CZh.IMHistory模式的路由 | CZh.IM

          History模式的路由

          用一个类来实现简单的页面history模式路由。

          + this.links = document.q..." />

          History模式的路由

          用一个类来实现简单的页面history模式路由。

          1. 实现一个类

            diff --git a/post/you-guan-liu-lan-qi-xuan-ran-compositing/index.html b/post/you-guan-liu-lan-qi-xuan-ran-compositing/index.html index 8d18aa3..359a768 100644 --- a/post/you-guan-liu-lan-qi-xuan-ran-compositing/index.html +++ b/post/you-guan-liu-lan-qi-xuan-ran-compositing/index.html @@ -1,6 +1,6 @@ -有关浏览器渲染(Compositing) | CZh.IM有关浏览器渲染(Compositing) | CZh.IM

            有关浏览器渲染(Compositing)

            浏览器渲染的过程

            +对于解析到的link 标签,会进行并行下载,下载完成后解析,style标签会直接解析,link,style标签中的样式资源会生成..." />

            有关浏览器渲染(Compositing)

            浏览器渲染的过程

            当浏览器拿到HTTP响应的HTML文件时,会去解析HTML的DOM结构。生成DOM Tree

            对于解析到的link 标签,会进行并行下载,下载完成后解析,style标签会直接解析,link,style标签中的样式资源会生成 CSS Rule Tree。

            而script标签分为三种情况。

            diff --git a/tag/iEGRrNFv6/index.html b/tag/iEGRrNFv6/index.html index 68920f5..732296e 100644 --- a/tag/iEGRrNFv6/index.html +++ b/tag/iEGRrNFv6/index.html @@ -1 +1 @@ -Javascript | CZh.IM

            标签:#Javascript

            \ No newline at end of file +Javascript | CZh.IM

            标签:#Javascript

            \ No newline at end of file diff --git a/tag/wtUGKxinq/index.html b/tag/wtUGKxinq/index.html index 2f9d5f2..ff00ae1 100644 --- a/tag/wtUGKxinq/index.html +++ b/tag/wtUGKxinq/index.html @@ -1 +1 @@ -HTTP | CZh.IM

            标签:#HTTP

            \ No newline at end of file +HTTP | CZh.IM

            标签:#HTTP

            \ No newline at end of file diff --git a/tags/index.html b/tags/index.html index 3c4bd89..1f80978 100644 --- a/tags/index.html +++ b/tags/index.html @@ -1 +1 @@ -CZh.IM
            \ No newline at end of file +CZh.IM
            \ No newline at end of file