ES6數組新增的幾個方法


關於數組中foreach() 、map()、filter()、reduce() 、 some()、every()的總結。

1.foreach()

var arr = [1,2,3,4];

arr.foreach((item,index,arr)=>{

    console.log(item);  //結果為1,2,3,4

});

//foreach遍歷數組,無返回值,不改變原數組,僅僅只是遍歷,常用於注冊組件、指令等等。

2.map()

var arr = [1,2,3,4];

arr.map((item,index,arr)=>{

    return item*10;  //結果為10,20,30,40

});

//map遍歷數組,返回一個新數組,不改變原數組

3.filter()

var arr = [1,2,3,4];

arr.filter((item,index,arr)=>{

   return item >2; //結果為[3,4]

});

//filter過濾掉數組中不滿足條件的值,返回一個新數組,不改變原數組

4.reduce()

var arr = [1,2,3,4];

arr.reduce((result,item,index,arr)=>{

  console.log(result);

  console.log(item);

  console.log(inddx);

  return result+item; 

});

//reduce讓數組的前后兩項進行某種計算,然后返回其值,並繼續計算,不改變原數組,返回計算的最終結果,從數組的第二項開始遍歷。

5.some()

var arr = [1,2,3,4];

arr.some((item,index,arr)=>{

   return item > 2; //返回true

});

//遍歷數組每一項,有一項返回true,則停止遍歷,結果返回true。不改變原數組。

6.every()

var arr = [1,2,3,4];

arr.every((item,index,arr)=>{

   return item >1; //返回false

});

//遍歷數組每一項,每一項返回true,最終結果為true.有一項返回false,停止遍歷,結果返回為false。不改變原數組。

 

以上6個方法均為ES6語法,IE9及以上才支持。不過可以通過babel轉意支持IE低版本。
以上均不改變原數組。
some、every返回true、false。
map、filter返回一個新數組。
reduce讓數組的前后兩項進行某種計算,返回最終操作的結果。
forEach 無返回值。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM