23.混子

36 阅读1分钟
  • 准备工具函数--判断数据类型--取出对象的 keys
  • 判断数据类型
let isType = (data)=>{
    return Object.prototype.toString.call(data).slice(8,-1);
};

// 取出对象 keys 值
let keys = (data)=>{
    return Object.keys(data);
}
// 进行判断,看看一级又没有相同的
let fun1 = (p9t,o7p)=>{
    // 将它的key 提取出来合并起来
    let a1 = keys(p9t);
    let a2 = keys(o7p);
    let o1 = {}
    
    let a3 = [...new Set([...a1,...a2])];
    a3.map(item=>{
        let b1 = [p9t,p9t]
        // o1[item] = o7p[item];
        if (isType(item) == "Object") {
            fun1(item)
        }else if(isType(item) == 'Array'){
            setArray(item)
        }
    })
    let setArray = (arr)=>{
        arr.map((item)=>{
            if(isType(item) == "Object"){
                fun1(item)
            }else if(isType(item) == 'Array'){
                setArray(item)
            }else{

            }
        })
    }
    console.log(a3,o1);
};
fun1(option.value,option2.value);

这个方法不行,无法同时集合第一层里面的数据.