forEach,map ,filter,every,some,reduce區(qū)別

forEach,map ,filter,every,some,reduce區(qū)別與對比

//聲明數(shù)組
var arr =  [
        {
            "id":"1",
            "name":"川菜"},
        {
            "id":"2",
            "name":"魯菜"},
        {
            "id":"3",
            "name":"粵菜"}];

    //forEach讓數(shù)組中的每一項做一件事
    arr.forEach(function(item,index){
        item.type = index;
    });
    console.log(arr);  //增加一個屬性

    //map 讓數(shù)組通過每種計算產(chǎn)生一個新數(shù)組
    var newArr = arr.map(function(item,index){
        return item.id*2;
    });
    console.log(newArr);  //[2, 4, 6]

    //filter 篩選出數(shù)組中符合條件的項,組成新數(shù)組
    var newArr = arr.filter(function(item,index){
        return item.id > 1;
    })
    console.log(newArr);  //過濾符合規(guī)則的對象組成數(shù)組

    //every 檢測數(shù)組中某一項是否符合條件 boolean
    var result = arr.every(function(item,index){
        return item.id >1;
    });
    console.log(result);  //false

    //some 檢測數(shù)組中是否包含某些想符合條件 boolean
    var result = arr.some(function(item,index){
        return item.id == 3;
    })
    console.log(result);  //true

    //reduce 讓數(shù)組中的前項和后項做某種計算,并累計最終值(不支持對象計算)
    var numberArr = [1,20,30];
    var result = numberArr.reduce(function(prev,next){
        return prev+next;
    })
    console.log(result);  //51
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

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