主要增長對大於0xFFFF
的碼點的支持:數組
for...of
循環遍歷安全
var text = String.fromCodePoint(0x20BB7); for (let i = 0; i < text.length; i++) { console.log(text[i]); } // " " // " " for (let i of text) { console.log(i); //吉 }
這個遍歷器最大的優勢是能夠識別大於0xFFFF
的碼點app
includes(), startsWith(), endsWith()增長的匹配功能,函數
padStart(),padEnd():若是不全,用指定字符補全字符串code
repeat() 返回一個新字符串,表示將原字符串重複n
次。對象
$("#result").append(` There are <b>${basket.count}</b> items in your basket, <em>${basket.onSale}</em> are on sale! `);
模板字符串(template string)是加強版的字符串,用反引號(`)標識。它能夠看成普通字符串使用,也能夠用來定義多行字符串,或者在字符串中嵌入變量。ip
重要應用,jsx
過濾HTML字符串,防止用戶輸入惡意內容字符串
多語言轉換(國際化處理)string
在JavaScript語言之中嵌入其餘語言 jsx//jsx語言
tag`Hello ${ a + b } world ${ a * b }`; //等價於下面 tag(['Hello ', ' world ', ''], 15, 50) i18n`Welcome to ${siteName}, you are visitor number ${visitorNumber}!` // "歡迎訪問xxx,您是第xxxx位訪問者!"
String.raw
方法,每每用來充當模板字符串的處理函數,返回一個斜槓都被轉義(即斜槓前面再加一個斜槓)的字符串,對應於替換變量後的模板字符串。
String.raw
方法能夠做爲處理模板字符串的基本方法,它會將全部變量替換,並且對斜槓進行轉義,方便下一步做爲字符串來使用。
String.raw
方法也能夠做爲正常的函數使用。這時,它的第一個參數,應該是一個具備raw
屬性的對象,且raw
屬性的值應該是一個數組。
ES6提供了二進制和八進制數值的新的寫法,分別用前綴0b
(或0B
)和0o
(或0O
)表示。
0b111110111 === 503 // true 0o767 === 503 // true
Number.isFinite():檢查一個數值是否非無窮(infinity)。
Number.isNaN():檢查一個值是否爲NaN
Number.parseInt()
Number.parseFloat()ES6將全局方法parseInt()
和parseFloat()
,移植到Number對象上面
Number.isInteger() 判斷一個值是否爲整數
Number.EPSILON :極小的常量Number.EPSILON
,的實質是一個能夠接受的偏差範圍。
安全整數和Number.isSafeInteger() JavaScript可以準確表示的整數範圍在-2^53
到2^53
之間(不含兩個端點),超過這個範圍,沒法精確表示這個值。
Number.MAX_SAFE_INTEGER
和Number.MIN_SAFE_INTEGER
這兩個常量,用來表示這個範圍的上下限。
Math.trunc():用於去除一個數的小數部分,返回整數部分
Math.sign(): 用來判斷一個數究竟是正數、負數、仍是零。
Math.cbrt
方法用於計算一個數的立方根。
Math.clz32
方法返回一個數的32位無符號整數形式有多少個前導0。
Math.imul
方法返回兩個數以32位帶符號整數形式相乘的結果,返回的也是一個32位的帶符號整數。
Math.fround方法返回一個數的單精度浮點數形式。
Math.hypot
方法返回全部參數的平方和的平方根
對數方法
三角函數方法
指數運算符
傳統方法先調用Number()
將非數值的值轉爲數值,再進行判斷,而這兩個新方法只對數值有效,非數值一概返回false
。
Array.from
方法用於將兩類對象轉爲真正的數組
常見的相似數組的對象是DOM操做返回的NodeList集合,以及函數內部的arguments
對象。Array.from
均可以將它們轉爲真正的數組。
// NodeList對象 let ps = document.querySelectorAll('p'); Array.from(ps).forEach(function (p) { console.log(p); });
Array.of
方法用於將一組值,轉換爲數組。
Array() // [] Array(3) // [, , ,] 參數個數只有一個時,其實是指定數組的長度。 Array(3, 11, 8) // [3, 11, 8]
Array.of
基本上能夠用來替代Array()
或new Array()
,而且不存在因爲參數不一樣而致使的重載。它的行爲很是統一。
數組實例的copyWithin
方法,在當前數組內部,將指定位置的成員複製到其餘位置(會覆蓋原有成員),而後返回當前數組。
數組實例的find
方法,用於找出第一個符合條件的數組成員。
fill
方法使用給定值,填充一個數組。 用於空數組的初始化很是方便。
ES6提供三個新的方法——entries()
,keys()
和values()
——用於遍歷數組。它們都返回一個遍歷器對象
返回一個布爾值,表示某個數組是否包含給定的值,該方法屬於ES7,但Babel轉碼器已經支持。
使用函數參數的默認值,分別哪些參數是能夠省略的與解構賦值默認值結合使用