数组

馋奶兔 提交于 2019-12-06 07:03:11

1.map-映射(一个对一个)

let arr = [12,58,99,86,45,91];
let result = arr.map(function(item){
    // alert(item)
    return item*2
});

//let result = arr.map(item=>item*2);
alert(result)
View Code

2.reduce-汇总(一堆出来一个)

算个总数

[12,12,12]=>36

            let arr = [12,58,99,86,45,91];
            let result = arr.reduce(function(tmp,item,index){
                //tmp  上一次的运算结果   第一次
                //item 当前的数
                //index 下标
                return tmp +item
            })
            console.log(result)                    

 

算个平均数

[12,12,12]=>12

       let arr = [12,58];
            let result = arr.reduce((tmp,item,index)=>{
                //tmp  上一次的运算结果   第一次
                //item 当前的数
                //index 下标
                if(index!=arr.length-1){
                    return tmp+item
                }else{
                    return(tmp+item)/arr.length
                }
                // return tmp +item
            })
            console.log(result)

3.filter—过滤器(通过return true或false来判断是否要留下这个数)

            let result = arr.filter(item=>{
                if(item%3==0){
                    return true
                }else{
                    return false
                }
            })

            // 等价于 let rerult=arr.filter(item=>item%3==0)
            console.log(result)    
let arr =[
                {title:'男士衬衫',price:500},
                {title:'女士包',price:512030},
                {title:'男士包',price:62},
                {title:'袜子',price:521452}
            ];
            let result = arr.filter(json=>json.price>10000)
            console.log(result)

结果如图所示:

4.foreach—循环(迭代)(相当于循环数组)

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!