ES6是js語言的國際標(biāo)準(zhǔn),js是ES6的實(shí)現(xiàn)。

檢測瀏覽器對的ES6的支持程度

image.png
tracecur轉(zhuǎn)碼器將es6翻譯成es5

image.png

image.png
注意

轉(zhuǎn)碼器
let##

image.png
let基本用法

let不存在變量的提升

image.png
暫時(shí)性死區(qū)
聲明變量之前,如果使用到該變量,則發(fā)生暫時(shí)性死區(qū)

瀏覽器報(bào)錯(cuò) ,不允許重復(fù)聲明

image.png
不受外界影響

image.png
模塊內(nèi)部不允許重復(fù)聲明
bcd會(huì)報(bào)錯(cuò)

不允許
模塊之間可以

之間
塊級(jí)作用域

image.png
變量提升內(nèi)層覆蓋外層

image.png
i值變?yōu)槿肿兞?,占用?nèi)存

塊級(jí)作用域相對獨(dú)立

image.png
立即執(zhí)行函數(shù)IIFE
(function(){}());

es5
不管判斷,先執(zhí)行函數(shù),把inside函數(shù)做提升,覆蓋outside函數(shù)

es6
結(jié)果

image.png

image.png