美文网首页
forEach,map ,filter,every,some,r

forEach,map ,filter,every,some,r

作者: 倒带人生617 | 来源:发表于2018-04-13 17:04 被阅读0次

forEach,map ,filter,every,some,reduce区别与对比

//声明数组
var arr =  [
        {
            "id":"1",
            "name":"川菜"},
        {
            "id":"2",
            "name":"鲁菜"},
        {
            "id":"3",
            "name":"粤菜"}];

    //forEach让数组中的每一项做一件事
    arr.forEach(function(item,index){
        item.type = index;
    });
    console.log(arr);  //增加一个属性

    //map 让数组通过每种计算产生一个新数组
    var newArr = arr.map(function(item,index){
        return item.id*2;
    });
    console.log(newArr);  //[2, 4, 6]

    //filter 筛选出数组中符合条件的项,组成新数组
    var newArr = arr.filter(function(item,index){
        return item.id > 1;
    })
    console.log(newArr);  //过滤符合规则的对象组成数组

    //every 检测数组中某一项是否符合条件 boolean
    var result = arr.every(function(item,index){
        return item.id >1;
    });
    console.log(result);  //false

    //some 检测数组中是否包含某些想符合条件 boolean
    var result = arr.some(function(item,index){
        return item.id == 3;
    })
    console.log(result);  //true

    //reduce 让数组中的前项和后项做某种计算,并累计最终值(不支持对象计算)
    var numberArr = [1,20,30];
    var result = numberArr.reduce(function(prev,next){
        return prev+next;
    })
    console.log(result);  //51

相关文章

网友评论

      本文标题:forEach,map ,filter,every,some,r

      本文链接:https://www.haomeiwen.com/subject/yyqhkftx.html