Es6中let與const的區別:(神奇的塊級做用域)

     所謂的塊級做用域:造成一個暫時性的死區;{    }spa

1、共同點:code

a:都是用來聲明變量;blog

b:都能造成一個塊級做用域;ip

c:都只能在聲明變量的塊級做用域裏面有效;作用域

2、不一樣點:console

  1.let:class

  a:在同一做用域裏面不能使用let聲明多個相同變量;變量

  b:變量不會泄露在全局;di

  c:let聲明的變量不會進行變量的提高ant

  2.const:

  a:也不會進行變量的提高;

  b:const經常使用來聲明一個常量;用const聲明的變量的值時不能改變的!!!

若是用const聲明變量的話-----Uncaught TypeError: Assignment to constant variable.(報錯)

<body>
    <script>
      for(const i=0;i<10;i++){   //Uncaught TypeError: Assignment to constant variable.
          console.log(i);
      }

      for(let i=0;i<10;i++){   //正常輸出!
          console.log(i);
      }
    </script>
</body>
相關文章
相關標籤/搜索