1. 程式人生 > >H5中的es6新特性淺析

H5中的es6新特性淺析

結構標籤:header、footer、aside、section、article、nav、figure

表單標籤:email、number、range、date、search、color

媒體標籤:video、audio、embed

其他功能標籤:process(進度條) mark(標記)、canvas

變數的宣告let、const:let類似於var,但是作用域只在所在的程式碼塊內有效。const宣告常量,設定值後不會在改變。

箭頭函式:注意this的指向問題

()=>{
			
}

匿名函式:自呼叫。減少全域性變數、避免了全域性空間汙染。jQuery的原始碼是使用了匿名函式的寫法。

新增的陣列方法:

indexof返回元素在陣列中的索引,如果不存在返回-1。用來判斷某個陣列中是否含有某個元素。用途:找一個數組中的最大值或者最小值。

foreach、map:遍歷迴圈陣列。foreach無返回值,不改變原陣列。map返回一個新陣列,不改變元素組的值。map使用頻率更為高些。

var arr=[1,2,3,4,5];
arr.forEach(function(item,i,arr){
    return item//1,2,3,4,5
})
var arr=[1,2,3,4];
arr.map(function(item,i,arr){
return item+1;//[2,3,4,5]
})

filter:篩選。篩選不滿足條件的陣列。返回新陣列,不改變元素組。

var arr=[1,2,4,5];
var b=arr.filter(function(a){
    return a>3
})

same:迴圈遍歷,如果有一項為true,則停止遍歷。不改變元陣列。

var arr = [11,33,22];
arr.some((item,index,arr) => {
    return item > 22 //結果為true
})

every:每一個滿足條件即為true;

reduce:累積。用途是是一個數組扁平化,也就是使用它可以把二維陣列轉換成一個為陣列

var arr=[[1,2].[3,4]];
arr.reduce(function(a,b){
    return a.concat(b)
})