ES6語法 let 和 const 關鍵字

2021-10-11 08:48:25 字數 1096 閱讀 5932

我們以前都是使用 var 關鍵字來宣告變數的。

在 es6 的時候,多了兩個關鍵字 let 和 const ,也是用來宣告變數的只不過和 var 有一些區別。

// 使用 var 的時候重複宣告變數是沒問題的,只不過就是後的會把前面覆蓋掉

var num =

100

var num =

200

通過let宣告變數,之前的區域,叫做暫時性死區。

let num;

alert

(num)

;//undefined

const num2 =20;

alert

(num2)

;

// 使用const 重複宣告變數的時候就會報錯

const num =

100const num =

200// 這裡就會報錯了

ii. let 和 const 宣告的變數不會在預解析的時候解析(也就是沒有變數提 公升)

alert

(num)

;const num =10;

alert

(num)

;`

iii. let 和 const 宣告的變數會被所有**塊限制作用範圍

// var 宣告的變數只有函式能限制其作用域,其他的不能限制

if

(true

)console.

log(num)

// 100

// let 宣告的變數,除了函式可以限制,所有的**塊都可以限制其作用域

(if/while/for/…)

if

(true

)console.log(num) // 報錯

let num num =

100 console.

log(num)

// 100

const num // 這裡就會報錯了,因為 const 宣告的時候必須賦值

ES6語法 let和const區別

var變數穿透問題 lang en charset utf 8 name viewport content width device width,initial scale 1.0 documenttitle head let和const 解決 1 var變數穿透的問題 2 變數修改的問題 for ...

ES6學習 let和const命令

1.let命令 所宣告的變數命令所在 塊有效 a referenceerror a is not defined.b 1for迴圈的計數器,就很適合let命令 for let i 0 i arr.length i console.log i referenceerror i is not defin...

ES6 一 let和const命令

在js中是沒有塊級作用域的,var 宣告的變數作用域是整個函式體,而let可以起到這一作用 console.log b 2 console.log a a is not defind 而let可以起到這一作用啊在js中變數和函式的宣告會提公升到當前作用域最頂部執行。這樣就會出現問題。var a 函式...