ES6中的let和const

let和const

let

用來聲明變量,可是所聲明的變量只在let命令所在的代碼塊內有效javascript

  {
    let a=12
    alert(a)//12
  }
  alert(a)//報錯 找不到

let不像var那樣會發生變量提高,因此必定要先聲明後使用。java

  console.log(foo); //undefined   console.log(bar); //報錯   var foo = 2;   let bar = 3;

let不容許在相同做用域內重複聲明同一個變量。ui

   let a=12;
   let a=5;//報錯
   console.log(a)spa

 

const

const一樣能夠建立塊做用域變量,一樣只在聲明所在的塊級做用域中有效。但其值是固定的,不可更改,只讀。code

    {
    const a=12;
      alert(a);//12
    }
    alert(a)//報錯ip

 

一旦聲明變量,就必須當即初始化,不能留到之後賦值。作用域

  //只聲明不賦值就會報錯   const foo; //報錯

const和let同樣沒有變量提高,一樣不能重複聲明。io

相關文章
相關標籤/搜索