55.every,filter,forEach,map,some,reduce,slice

数组方法:

<script type="text/javascript">
            var arr = new Array(1,2,3,4,5)
            //concat() 将元素加入到数组中
            arr = arr.concat(6)

        // arr = arr.concat(7,8)
        // arr = arr.concat([9,10])
        // arr = arr.concat([11,12],[14,15])
        // arr = arr.concat(13,[[14,15],16])


            console.log('concat->',arr)
            
            //every 判断每个元素是否符合条件,相当于&&,都符合条件返回值才是true
            let a1 =  arr.every(function(a,i,c){
//                console.log(a,i,c)
                if(a>2)
                    return true
                return false
                
            })
            console.log('every->',a1)
            //some 和上面刚好相反相当于||
            let a2 =  arr.some(function(a,i,c){
//                console.log(a,i,c)
                if(a>2)
                    return true
                return false
                
            })
            console.log('some->',a2)
            //filter 过滤数组,将满足条件的元素组成一个新的数组作为返回值
            let filterArr = arr.filter(function(a,i,c){
//                console.log(a,i,c)
                if(a>1)
                    return true
                return false
                
            })
            console.log('filterArr->',filterArr)
            
            //forEach 遍历数组
            arr.forEach(function(a,i,c){
                //这里要做的事
                console.log('forEach->',a,i,c)
            })
            //map 遍历数组并返回新的数组元素
            
            let mapArr = arr.map(function(a,i,c){
                return a+10
            })
            console.log('mapArr->',mapArr)
            
            //join 数组转化字符串
            var joinStr = arr.join('-')
            console.log('joinStr->',joinStr)
            
            //pop 移除数组元素的最后一个
            arr.pop()
            console.log('popArr->',arr)
            
            //push 数组尾添加一个元素
            arr.push(5)
            console.log('popArr->',arr)
            
            //reduce 根据数组元素计算出一个值
            //1.取最大值
            let maxValue = arr.reduce(function(a,b){
                return a>b?a:b
            })
            console.log('reduce最大->',maxValue)
            //2.去重
            let $arr = arr.reduce(function(prev,number){
                
                if(prev.indexOf(number)===-1){
                    prev.push(number)
                }
                return prev;
            },[])
            console.log('reduce去重->',$arr)
            
            //reverse 翻转
            arr.reverse()
            console.log('reverse->',arr)
            
            //shift 移除数组的第一个元素
            arr.shift()
            console.log('shift->',arr)
            
            //slice 返回数组的一部分参数表示截取开始结束位置,结束下标为开区间是不包括的
            let sliceArr1 = arr.slice(1)
            let sliceArr2 = arr.slice(1,4)
             console.log('sliceArr1->',sliceArr1)
             console.log('sliceArr2->',sliceArr2)
             
             //sort 排序 返回值false,true表示升序降序
             arr.push(6)
             arr.push(55)
             arr.push(5)
             arr.push(8)
             arr.push(10)
             let sortArr = arr.sort(function(a,b){
                 return a-b
             })
             console.log('sortArr->',sortArr)
             //splice(index,way,item) 
             //index 位置
             //way 0 表示不删除,插入 大于零就会删除覆盖index至index+way-1位置的值
             //item 插入值
             arr.splice(0,3,100)
             console.log('splice->',arr)
        </script>

 

posted @ 2017-09-18 17:02  famCc  阅读(190)  评论(0编辑  收藏  举报