關(guān)于數(shù)組的迭代方法

ES5為數(shù)組定義了5個迭代的方法
每個方法都接受兩個參數(shù):1.要在每一項上運行的函數(shù) 2.運行該函數(shù)的作用域?qū)ο?-影響this的值(可選)。
運行的函數(shù)會接受三個參數(shù):1.數(shù)組項的值 2.該項在數(shù)組中的位置 3.數(shù)組對象本身。

31. every()

對數(shù)組的每一項運行給定函數(shù),如果該函數(shù)對每一項都返回true,則返回true
例子:

    var arr = [1,2,3,4,5,4,3,2,1];
    var num = arr.every(function(item,index,array){
        return (item > 2);
    })
    console.log(num);  //false

2 .some()

對數(shù)組的每一項運行給定函數(shù),如果該函數(shù)對任一項返回true,則返回true。

    例:
    var arr = [1,2,3,4,5,6,7,8];
    var num = arr.some(function(item,index,array){
        return (item > 2);
    })
    console.log(num);  //true

3.filter()

對數(shù)組的每一項運行給定函數(shù),返回該函數(shù)會返回true的項組成的數(shù)組。

    例:
    var arr= [1,2,3,4,5,4,3,6,1];
    var num= arr.filter(function(item,index,array){
        return (item > 3);
    })
    console.log(filterResult);  //[4,5,4,6]

4·map()

對數(shù)組的每一項運行給定函數(shù),返回每次函數(shù)調(diào)用的結(jié)果組成的數(shù)組。

    例:
    var arr = [1,2,3,4,5,6,7,8];
    var num = arr.map(function(item,index,array){
        return item*2;
    })
    console.log(num);  //[2,4,6,8,10,12,14,16]

5·forEach()

對數(shù)組的每一項運行給定函數(shù)。該方法沒有返回值。

    var arr = [1,2,3,4,5,6,7,8];
    var num = arr.forEach(function(item,index,array){
        console.log(item*2); //[2,4,6,8,10,12,14,16]
    })
    console.log(num);  //undefined

歸并方法

·reduce() 是從數(shù)組的第一項開始,逐個遍歷到最后。
.reduceRight() 是從數(shù)組的最后一項開始,逐個遍歷到最前。
這兩個方法都會迭代數(shù)組的所有項,然后構(gòu)建一個最終返回的值。
這兩個方法都接收兩個參數(shù):1.要在每一項上運行的函數(shù) 2.作為歸并基礎(chǔ)的初始值(可選)
傳給這兩個方法的函數(shù)接收4個參數(shù):1.前一個值 2.當(dāng)前值 3.項的索引 4.數(shù)組對象

    例:
    var values = [3,6,5,2,4,2];
    var sum = values.reduce(function(prev,cur,index,array){
        return prev + cur;  //3+6=9+5=14+2=16+4=20+2=22
    });
    console.log(sum); //22
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第5章 引用類型(返回首頁) 本章內(nèi)容 使用對象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類型 使用基本類型...
    大學(xué)一百閱讀 3,679評論 0 4
  • ??引用類型的值(對象)是引用類型的一個實例。 ??在 ECMAscript 中,引用類型是一種數(shù)據(jù)結(jié)構(gòu),用于將數(shù)...
    霜天曉閱讀 1,219評論 0 1
  • 數(shù)組總共有22種方法,本文將其分為對象繼承方法、數(shù)組轉(zhuǎn)換方法、棧和隊列方法、數(shù)組排序方法、數(shù)組拼接方法、創(chuàng)建子數(shù)組...
    Sachie閱讀 1,037評論 0 7
  • 第3章 基本概念 3.1 語法 3.2 關(guān)鍵字和保留字 3.3 變量 3.4 數(shù)據(jù)類型 5種簡單數(shù)據(jù)類型:Unde...
    RickCole閱讀 5,527評論 0 21
  • 本章內(nèi)容 使用對象 創(chuàng)建并操作數(shù)組 理解基本的 JavaScript 類型 使用基本類型和基本包裝類型 引用類型的...
    悶油瓶小張閱讀 782評論 0 0

友情鏈接更多精彩內(nèi)容