DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> ES6新特征數字、數組、字符串
ES6新特征數字、數組、字符串
編輯:關於JavaScript     

一、let和const

let:聲明變量,只在聲明的塊級作用域(大括號)內起作用[注意:let不向var那樣可以自動提升]

如果一個區塊內存在let或const命令,該區塊就被解析成封閉作用域(暫時性死區,必須先聲明再使用) [所以一個區塊內只要有let,就可能存在死區,就可能會出現變量聲明使用順序的錯誤]

let為JavaScript增加了塊級作用域

ES6中在塊級作用域聲明的函數不能在外部被引用,但在ES5中可以(ES5中的函數聲明可以提升到全局作用域或函數作用域頭部,ES6中不行,但是ES6位了避免對老代碼的沖擊放開了新的規定)

const聲明值不能被改變的常量

const聲明對象的時候指向的是地址而不是具體數據,所以不可變的是地址

let、class、const在全局聲明的變量不再是全局變量,不再掛載到window對象上

二、變量的解構賦值

解構賦值:模式匹配,左右兩側通過數組的模式匹配復制,不需要一個個賦值了,如:

var [a, b, c] = [1, 2, 3] [這種事數組解構,按位置賦值]

還可以對象解構,沒有次序要求,按照變量名賦值:

var {bar, foo} = {foo: “aaa”, bar: “bob”};

字符串解構:const [a, b, c, d, e] = ‘hello';

三、字符串的擴展

\uxxxx表示一個字符,後加字符的四位碼點

codePointAt:正確處理4個字節儲存的字符

String.fromCharCode():將碼點返回成對應的字符串

for…of可以遍歷字符串 比如for(let a of “hello”){console.log(a);} 打印出hello各個字母

類似indexOf()的方法:includes()是否找到參數字符串;startsWith/endsWith是否在字符串頭/尾部

repeat():將原字符串復制n次返回新字符串 ‘x'.repeat(3) //xxx

模版字符串:使用反引號

字符串中可以使用正則表達式的方法:match()/replace()/search()/split()

可以為正則表達式添加u字符,用來處理中文等

四、數值的擴展

0b開頭二進制;0o開頭八進制

Number.isNaN()/Number.inFinite() 檢測一個數是否是NaN/有限值,只對數值有效

Number.isInteger() 判斷是否是整數

Math.trunc() 去除一個數的小數部分;Math.sign() 判斷一個數是正數、負數、零

Math.cbrt() 計算一個數的立方根;Math.hypot() 求所有參數的平方和的平方根

五、數組的擴展

Array.from():將類數組對象轉換成數組,還可以傳入第二個參數,作用類似map,對每個元素操作

ES6中:var arr = Array.from(arrayLike);

ES5中:var arr = [].slice.call(arrayLike);

Array.of():將一組值轉換為數組

find()方法:找到第一個符合條件的數組成員,參數是一個回調函數,每個成員都執行一次回調函數

[1, 5, 10, 15].find(function(value, index, arr) { //當前值、索引、原數組
return value > 9;
})

fill()方法:用來填充一個數組,fill(value, start, end),表示從start開始end截止使用value填充

ES6規定數組中空位的值是undefined,注意不是這個位置是undefined而事這個位置的值的undefined

以上所述是小編給大家介紹ES6新特征數字、數組、字符串,希望對大家有幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved