jsjsjsjsjssjsjsjs

 //拿到{'mary':18','jacky':16,'ben':20}

  let a1 = [{ name: 'mary', age: 18 }, { name: 'jacky', age: 16 }, { name: 'ben', age: 20 }]    
        const rlt = a1.reduce((pre, cur) => {
        pre[cur.name] = cur.age;
        return pre;
        
        }, {});
        console.log(rlt)

数据扁平化 1,2,3,4su

 var arr = [1, [2, [3, 4]]];
        function a(arr) {
            console.log(arr.toString())
            return arr.toString().split(',').map((item) => {
                return + item
            })
        }
        console.log(a(arr))


        function b(arr) {
            return arr.reduce((c1, c2) => {
                return c1.concat(Array.isArray(c2) ? b(c2) : c2)
            }, [])
        }
        console.log(b(arr))

 数组去重  1. 有值返回true,没有则返回false    if( !arr1.includes( arr[i] ) 把没的push到新数组里 

2.引入underscore插件  _.uniq(arr)

  a = [1, 1, 2, 2, 3, 3]
        let c = []
        for (k in a) {
            console.log(a);
            if (c.indexOf(a[k]) === -1) {
                c.push(a[k])
            }
        }
        console.log(c);

        
        function arr(a) {
            if (!Array.isArray(a)) {
                return
            }
            let ccc = []
            for (k in a) {
                console.log(k);
                if (ccc.indexOf(a[k]) === -1) {
                    ccc.push(a[k])
                }
            }
            return ccc
        }
        console.log(arr(a));

深拷贝

    let obj1 = {
            name: 'xxx',
            sex: '男',
            like: ['红色', '蓝色'],
            book: {
                title: 'js程序',
                price: '88'
            }
        }

 Array.isArray(obj)?[] :{}
        function a(obj) {   
            let newObj = obj instanceof Array ? [] : {}
            for (k in obj) {
                if (typeof obj[k] === 'object') {

                    newObj[k] = a(obj[k])
                } else {
                    newObj[k] = obj[k]
                }

            }
            return newObj
        }
        console.log(obj1);
        let b = a(obj1)
        console.log(b)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值