SOURCE

function qCopy(item){
  if(!item && typeof item !=="object"){
    return;
  }
  var a=Array.isArray(item)?[]:{};
  for(var i in item){
    if(typeof item[i]==="object"){
      a[i]=qCopy(item[i]);
    }else{
      a[i]=item[i];
    }
  }
  return a;
}

var c=["1","2","3"];
var d={
  a:{
    b:"sdfsdf",
    c:["1","e","t"]
  },
  c:{
    b:{
      d:"sdsd"
    }
  },
  d:"sdsd",
  e:1213,
  f:["w","t"],
  h:function(){
    return "sdf";
  }
}
var b=qCopy(d);
console.log(b);
console 命令行工具 X clear

                    
>
console