如何深度克隆对象
function clone(obj){ if(typeof obj!='object'){ return obj; } if(obj instanceof Array){ var arr=[]; for(var i=0; i<obj.length; i++){ arr[i]=clone(obj[i]); } return arr; }else if(obj.constructor==Object){ var json={}; for(var name in obj){ json[name]=clone(obj[name]); } return json; }else if(obj instanceof HTMLElement){ return obj.cloneNode(true); }else{ //oDate reg Image return new obj.constructor(obj.valueOf()); } } var json={a:1,b:[1,{cc:90,kk:80},3],c:3}; var json2=clone(json); json2.b[1].cc='00'; console.log(json.b[1].cc); //90 console.log(json2.b[1].cc); //00
若需转载,请注明出处,谢谢合作!
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步