ES6数组操作

    let arr = [{
            name: 'bob',
            id: 1
        },{
            name: 'bob1',
            id: 2
        },{
            name: 'bob3',
            id: 1
        },{
            name: 'bob4',
            id: 2
        }]
        let arr1 = [1,2,3,4,3,4,3,6]
        // 把相同的id值合并成一个二维数组
        let obj = {}
        arr.forEach((item) => {
            if (!!obj[item['id']]) {
                obj[item['id']].push(item)
            } else {
                obj[item['id']] = [item]
            }
        })
        let newArr = Object.values(obj)
        // console.log(newArr)
        // 去重
        let newArr1 = Array.from(new Set(arr1))
        // 根据数组内对象值相同去重
        let obj1 = {}
        arr.forEach((item) => {
            if (!obj1[item['id']]) {
                obj1[item['id']] = item
            }
        })
        // console.log(Object.values(obj1))
        // 数组查找,返回找到的值,未找到返回undefined
        let arr2 = [1,2,3,4,5,6,7]
        let num = arr2.find((value) => {
            return value > 3
        })
        // console.log(num1)
        // 数组splice
        function splice(){
            // 关于splice
            // 只接受一个参数,arr1原数组会返回前三个,newArr2会返回截取后的
            let newArr2 = arr1.splice(3)
            console.log(newArr2, arr1)
            // 接受两个参数,newArr3表示从第二位开始截取4个返回新数组,arr1返回截取后的,第一个参数表示截取开始下标数,第二个参数表示截取多少个
            let newArr3 = arr1.splice(2,4)
            console.log(newArr3, arr1)
            // 接受三个参数,newArr4返回截取的数组,arr1返回截取后的数据且把原数组的第4位置换成第三个参数的值
            let newArr4 = arr1.splice(0,4,40)
            console.log(newArr4,arr1)
        }
        // splice()
    //快速创建长度100数组
    Array.from(new Array(100).keys())

 

posted @ 2019-05-29 10:53  空山竹语  阅读(675)  评论(0编辑  收藏  举报