ES6中的let關鍵字主要用於聲明局部變量,而且不會發生變量提升;const聲明一個只讀的常數,聲明後無法重新分配新的內容
ES6全稱為ECMAScript 6.0是JavaScript語言的下一代標準,它的目的是讓JavaScript語言可以用來編寫複雜的大型應用程序,ES6的出現意味著JavaScript擁有更成熟的語法以及使編碼更容易的新快捷方式,還有許多新的方法,新的關鍵字以及資料類型和其他增強功能等,接下來在文章中將為大家詳細介紹ES6中的一些新功能
【推薦課程:ES6實戰影片課程#】
##let關鍵字
ES6引入了新的let關鍵字,它允許我們在函數範圍內聲明局部變量,例如語句,表達式或內部函數,類似於var但是let不像var那樣會發生變數提升,所以,變數一定要在宣告後使用,否則就會報錯。
let arr=[1,2,3] for (let i = 0; i < arr.length; i++) { console.log(i); }
我們寫一個for循環函數然後再循環外寫一個語句重用相同的變數名稱時結果如下圖所示
let arr=[1,2,3] for (let i = 0; i < arr.length; i++) { console.log(i); } let x=i*i;
因為它的作用域僅限於在for迴圈內,所以外部未宣告不可用。
新的const關鍵字可以宣告一個只讀的常數,也稱為不可變變量,聲明以後我們無法重新分配新的內容。
const demo= 12; console.log(demo);
從效果圖可以看出當const宣告常數後如果我們再一次宣告就會報錯
但是不可變變數在ES6中並不總是完全不可變的,當我們就像保存一個物件一樣保存常數,我們就可以改變它的屬性和方法的值const foo =[];不改變位址的情況下我們可以為它增加新的內容,const聲明的常數,也與let一樣不可重複聲明。
全域物件的屬性
######在JavaScript中全域物件就是指的是window對象,全域物件的屬性賦值與全域變數的賦值是同一件事,在程式碼中如果一個變數未被宣告則自動成為全域物件。這樣的規定帶來了很大的問題,沒法在編譯時就報出變數未宣告的錯誤,只有執行時才能知道。但是ES6很好的解決了這一點,雖然透過let,const關鍵字來聲明全域變數但是它不屬於全域物件的屬性,這也就意味著全域變數與全域物件的屬性在逐步分離###var a=1; console.log(window.a); let b=1; console.log(window.b);# ###########總結:以上就是這篇文章的全部內容了,希望透過這篇文章可以讓大家對於ES6的知識有一定的了解。 ###### ###
以上是ES6中的let和const關鍵字如何使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!