ES6中定義變量,使用let const:
let:與var類似,用來定義變量
特點:
- 塊級作用域(第三種作用域)。let所聲明的變量,只在let命令所在的代碼塊內有效。
- 在使用var的時代,只有全局作用域和局部作用域,在es6中提出let關鍵,可以聲明一個塊級作用域。
- let沒有“變量提升”現象。
- 不會成爲window對象的屬性,變量的屬性不會像var一樣掛到Window上面
- 暫時性死區(TDZ)
- let不能重複定義
const:聲明常量。值不能改變。
特點:
- 定義完後,不能修改值(基本數據類型,也可能是地址)
- 不能重複聲明
- 沒有提升
- 聲明時必須賦值