es6筆記一
letes6
- 用於聲明變量,相似於var,可是所聲明的變量只在let命令所在的代碼塊內有效。
- 不存在變量提高,變量必定要在聲明後才能使用命令。
- 暫時性死區,若是區塊中存在let和const命令,這個區塊對這些命令聲明的變量,造成了封閉做用域
- 不能在相同的做用域內,重複聲明同一個變量
塊級做用域函數
- 外層做用域沒法讀取內層做用域的變量
- 內層做用域能夠定義外層做用域的同名變量
- es5規定函數只能在頂層做用域和函數做用域之中聲明,不能在塊級做用域中聲明
- es6明確容許在塊級做用域中聲明函數
- 函數聲明語句的行爲相似於let,在塊級做用域以外不可引用
const命令es5
- const聲明一個只讀變量,常量的值不能改變
- 一旦聲明,必須初始化,不然會報錯
- const和let命令相同,只在聲明所在的塊級做用域內有效
- 不存在變量提高,也存在暫時性死區,只能在聲明以後使用
- 不能重複聲明
頂層對象的屬性spa
- es5頂層對象的屬性與全局變量是等價的
- var、function命令聲明的全局變量,依舊是頂層對象的屬性
- let、const、class命令聲明的全局變量不屬於頂層對象的屬性
頂層對象對象
歡迎關注本站公眾號,獲取更多信息