let:git
const:es6
ES6 容許按照必定模式,從數組和對象中提取值,對變量進行賦值,這被稱爲解構(Destructuring)。github
數組解構:數組
let [a, b, c] = [123, 456, 789] console.log(a, b, c) 123 456 789
對象解構:瀏覽器
let { name, age } = { name: 'Jack', age: 18 } console.log(name, age) Jack 18
函數參數解構:babel
function f (p1, { p2 = 'aa', p3 = 'bb' }) { console.log(p1, p2, p3) } f('p1', { p2: 'p2' }) p1 p2 bb
字符串解構:app
let [a, b, c, d, e] = 'hello' console.log(a, b, c, d, e) h e l l o
實用方法:ecmascript
includes(String):返回布爾值,表示是否找到了參數字符串。 startsWith(String):返回布爾值,表示參數字符串是否在源字符串的頭部。 endsWith(String):返回布爾值,表示參數字符串是否在源字符串的尾部。 repeat(Number):repeat方法須要指定一個數值,而後返回一個新字符串,表示將原字符串重複Number次。
模板字符串:函數
let basket = { count: 5, onSale: true } $('#result').append(` There are <b>${basket.count}</b> items in your basket, <em>${basket.onSale}</em> are on sale! `);
${}
之中
方法:工具
Array.from() 將一個僞數組轉爲一個真正的數組 實際應用中,常見的相似數組的對象是DOM操做返回的NodeList集合, 以及函數內部的arguments對象。Array.from均可以將它們轉爲真正的數組。 Array.of() Array.of方法用於將一組值,轉換爲數組 這個方法的主要目的,是彌補數組構造函數Array()的不足。 由於參數個數的不一樣,會致使Array()的行爲有差別。 find() 查找數組中某個元素 findIndex() 查找數組中某個元素的索引下標 includes() 返回一個布爾值,表示某個數組是否包含給定的值,與字符串的includes方法相似
實例方法:
ES6提供三個新的方法——entries(),keys()和values()——用於遍歷數組.
能夠用 for...of
循環進行遍歷,惟一的區別是 keys()
是對鍵名的遍歷、
values()
是對鍵值的遍歷,entries()
是對鍵值對的遍歷。
entries() keys() values()
函數參數的默認值:
ES6 容許爲函數的參數設置默認值,即直接寫在參數定義的後面。 function log(x, y = 'World') { console.log(x, y); } log('Hello') Hello World log('Hello', 'China') Hello China log('Hello', '') Hello
rest 參數:
function add(...values) { let sum = 0; for (var val of values) { sum += val; } return sum; } add(2, 5, 3) 10
擴展運算符:
console.log(...[1, 2, 3]) 1 2 3 console.log(1, ...[2, 3, 4], 5) 1 2 3 4 5
箭頭函數:
var f = v => v 上面的箭頭函數等同於: var f = function(v) { return v }
屬性的簡潔表示法:
var foo = 'bar'; var baz = {foo}; baz {foo: "bar"} 等同於 var baz = {foo: foo} 除了屬性簡寫,方法也能夠簡寫: var o = { method() { return "Hello!" } } 等同於 var o = { method: function() { return "Hello!" } }