ES6系列之 let const命令

2021-08-25 02:59:59 字數 401 閱讀 8392

今天講解比較簡單,主要學習es6的let和const。讓大家牢固一下基礎知識。

在講解之前讓我們先來了解乙個知識點:什麼叫做塊級作用域

**名稱

含義塊級作用域

任何一對花括號中的語句集都屬於乙個塊,在這之中定義的所有變數在**塊外都是不可見的

for(var i = 0; i

< 10; i++)

console.

log(i);

你可能會覺得在console.log(i)裡面無法訪問到i變數,但是實際上最外面會輸出10,這是由於在js內部會造成變數提公升。同時也說明了es6之前是沒有塊級作用域的。一般往往通過建立立即執行函式來達到與塊級作用域相同的目的。

ES6新特性之 let const

在 es6之前,es5中js只有全域性作用域和函式作用域,作用域是乙個獨立的地盤,讓變數不外洩出去,但是上例中的變數就外洩了出去,所以此時 js 沒有塊級作用域的概念。全域性作用域就是最外層的作用域,如果我們寫了很多行 js 變數定義都沒有用函式包括,那麼它們就全部都在全域性作用域中。這樣的壞處就是...

es6之let,const關鍵字

在es5中沒有塊級作用域,只有函式作用域和全域性作用域,例如不能成為乙個作用域,但在es6中可以 for var i 0 i 4 i console.log i i 4這是因為i是在全域性的,最後列印的是for迴圈裡面最後的結果。用let替換var則結果為not defined。for let i ...

ES6中的let const命令

a referenceerror a is not defined.b 1a是區域性變數,b是全域性變數,a在外不生效 var 的情況 console.log foo 輸出undefined var foo 2 let 的情況 console.log bar 報錯referenceerror let...