Test name | Executions per second |
---|---|
JSON | 1529252.0 Ops/sec |
Copy (no generic) | 6160773.5 Ops/sec |
Copy (generic) | 2802696.0 Ops/sec |
function copyX(x) {
return {
a: x.a,
b: x.b,
c: {
a: x.c.a
}
}
}
function cloneObject(obj) {
var clone = {};
for(var i in obj) {
if(obj[i] != null && typeof(obj[i])=="object")
clone[i] = cloneObject(obj[i]);
else
clone[i] = obj[i];
}
return clone;
}
var x = {
a: 444,
b: 666,
c: {
a: "dddd"
}
}
JSON.parse(JSON.stringify(x))
copyX(x)
cloneObject(x)