1. [代码] [JavaScript]代码 function isClass(obj) { if(obj===null) return "NULL"; if(obj===undefined) return "Undefined"; return Object.prototype.toString.call(obj).slice(8,-1); } function deepClone(obj) { var result,oClass=isClass(obj);
1. [代码][JavaScript]代码
function isClass(obj)
{
if(obj===null)
return "NULL";
if(obj===undefined)
return "Undefined";
return Object.prototype.toString.call(obj).slice(8,-1);
}
function deepClone(obj)
{
var result,oClass=isClass(obj);
if(oClass==="Object")
{
result={};
}
else if(oClass==="Array")
{
result=[];
}
else
{
return obj;
}
for(key in obj)
{
var copy=obj[key];
if(isClass(copy)==="Object")
{
result[key]=arguments.callee(copy);
}
else if(isClass(copy)==="Array")
{
result[key]=arguments.callee(copy);
}
else
{
result[key]=copy;
}
}
return result;
}
