function deep(dest,ori){ // dest 目标对象 ori 源对象for(var i in ori){if(typeof ori[i] === ‘object’){// 递归 判断是数组还是对象dest[i] = (ori[i].constructor === Array) ? [] : {} //初始化属性deep(dest[i],ori[i])}else{dest[i] = ori[i] // 非引用属性 }} }