ES6 的let,var,const的一些理解

2021-08-01 22:38:14 字數 574 閱讀 9019

let宣告的是乙個常量,必須在建立的時候就賦值,否則報錯。賦值後不可更改,但如果宣告的let是乙個物件,對於let物件的內在元素則是可以修改的。

var 宣告的是乙個變數,但作用域會不同:

var a =

;for

(var i =

0; i <

10; i++);

}a[6]

();// 10

上面**中,變數ivar宣告的,在全域性範圍內都有效,所以全域性只有乙個變數i。每一次迴圈,變數i的值都會發生改變,而迴圈內被賦給陣列afunction在執行時,會通過閉包讀到這同乙個變數i,導致最後輸出的是最後一輪的i的值,也就是10。

const宣告的是乙個唯讀的常量。一旦宣告,常量的值就不能改變。const的作用域與let命令相同:只在宣告所在的塊級作用域內有效。

ES6系列 ES6簡介

2015年6月17日,ecmascript的第六個版本正式發布,該版本正式名稱為ecmascript 2015,但通常被稱為ecmascript 6或者es6。瀏覽器對es6的支援情況 es6主要應用於node.js,如果想用在瀏覽器中,就需要使用轉碼器 將es6 轉成es5 這意味著,可以用es6...

ES6系列 詳解ES6中的Map

map類似於物件,都用於儲存key value結構的資料。但是,在傳統的物件上,只能用字串或者symbol來作為鍵名。然而,map與物件最大的差別就在於它可以各種資料型別作為鍵名。map是乙個建構函式,用於例項化例項。const m newmap const o m.set o,content m....

ES6 細化ES6之 物件的擴充套件

物件的屬性 屬性表示法es6 允許在大括號裡面,直接寫入變數和函式,作為物件的屬性和方法 es5 let name 張無忌 function sayme es5定義物件的屬性和方法的方式 var obj console.log obj.name 張無忌es6 let name 張無忌 functio...