ES6數組相關
阿新 • • 發佈:2018-01-29
arr foreach 結果 常量 function result true map() es6
ES6數組新增的幾個方法:
1. forEach()
//forEach()遍歷數組,無返回值,不改變原數組 var arr=[1,2,3,4] arr.forEach((item,index,arr)=>{ console.log(item); //1,2,3,4 })
2. map()
//map()遍歷一個數組,返回新數組,不改變原數組的值 var arr=[1,2,3,4] arr.map((item,index,arr)=>{ return item*10; //返回新數組10,20,30,40 })
3. filter()
//過濾數組中不滿足條件的值,返回一個新數組,不改變原數組的值 var arr=[1,2,3,4] arr.filter((item,index,arr)=>{ return item>2; //新數組為[3,4] })
4. reduce()
//reduce讓數組的前後兩項進行某種計算,然後返回其值,並繼續計算。不改變原數組,返回計算的最終結果,從數組的第二項開始遍歷。 var arr=[1,2,3,4] arr.reduce((result,item,index,arr)=>{ console.log(result); // 1 3 6 result為上次一計算的結果console.log(item); // 2 3 4 console.log(index); // 1 2 3 return result+item; // 10 })
5.some()
//遍歷數組每一項,有一項返回true,則停止遍歷,結果返回true。不改變原數組 var arr=[] arr.some((item,index,arr)=>{ return item>3; //結果為true })
6. every()
//遍歷數組每一項,每一項返回true,則最終結果為true。當任何一項返回false時,停止遍歷,返回false。不改變原數組var arr = [1,2,3,4]; arr.every((item,index,arr) => { return item > 1 //結果為false })
ES6數組去重
1.方法一
function unique(arr){ //定義常量res,值為一個map對象實例 const res=new map(); //返回arr數組過濾後的結果,結果為一個數組 //過濾條件是,如果res中沒有某個鍵,就設置這個值的鍵為1 return arr.filter((a) =>!res.has(a)&& res.set(a,1)) }
2. 方法二
//Array.from() 方法從一個類似數組或可叠代的對象(包括 Array,Map,Set,String,TypedArray,arguments 對象等等) 中創建一個新的數組實例 function unique(){ return Array.from(new Set(arr)); }
ES6數組相關