H5中的es6新特性淺析
阿新 • • 發佈:2018-12-19
結構標籤: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) })