es6入門總結

2021-10-10 06:32:49 字數 1628 閱讀 1796

1、let所宣告的變數只在let命令所在的**塊內有效。(塊級作用域)

非常適合在迴圈中使用

var a =

;for

(let i =

0; i <

10; i++);

}a[6]

();// 6

2、let命令不存在變數提公升 它所宣告的變數一定要在宣告後使用,否則報錯。

3、let宣告變數存在暫時性死區

全域性變數tmp,但是塊級作用域內let又宣告了乙個區域性變數tmp,導致後者繫結這個塊級作用域,所以在let宣告變數前,對tmp賦值會報錯

在**塊內,使用let命令宣告變數之前,該變數都是不可用的

一旦宣告,常量的值就不能改變。const宣告的變數不得改變值,這意味著,const一旦宣告變數,就必須立即初始化,不能留到以後賦值。

constpi=

3.1415;pi

// 3.1415pi=

3;// 報錯

const foo;

// 報錯

只在宣告所在的塊級作用域內有效。

支援變數提公升

接使用沒有宣告的變數,let直接報錯,var的提示未定義:undefined

console.

log(vartest)

;//輸出undefined(注意要注釋掉下面一行才能執行)

console.

log(lettest)

;//直接報錯:referenceerror: lettest is not defined

var vartest;

let lettest;

console.

log(vartest)

;//輸出undefined

console.

log(lettest)

;//輸出undefined

//重複宣告同乙個變數的時候,不同

var vartest =

'test var ok.'

;let lettest =

'test let ok.'

;var vartest =

'vartest changed.'

;let lettest =

'lettest changed.'

;//直接報錯:syntaxerror: identifier 'lettest' has already been declared

console.

log(vartest)

;//輸出vartest changed.(注意要注釋掉上面lettest變數的重複宣告才能執行)

console.

log(lettest)

;//變數作用域不同

console.

log(vartest)

;//輸出"vartest changed.",內部"{}"中宣告的vartest變數覆蓋外部的lettest宣告,覆蓋

console.

log(lettest)

;//輸出"test let ok.",內部"{}"中宣告的lettest和外部的lettest不是同乙個變數,let塊級作用域

}

ES6快速入門

三種語法實現同乙個功能,從而加深對三種語法的運用,最後了解es6的優勢 知識點 常量 作用域 箭頭函式 預設 物件 es5 中常量的寫法 object.defineproperty window,pi2 console.log window.pi2 es6 的常量寫法 const pi 3.1415...

es6入門筆記

常量constconst a 1 a 2 console.log a 報錯 vm6833 2 uncaught typeerror assignment to constant variable.常量唯讀,不可以更改列表專案 es5 es6作用域舉個栗子 es5 function arr 0 4,i...

ES6快速入門

引數配置 promise物件 const 宣告的常量不可改變,宣告時必須初始化 const pi 3.1415926 console.log pi 使用const定義的陣列和物件,其值是可變的,但是不能對其進行重新賦值 const a a 0 1 console.log a 0 輸出1 const ...