Make deepCopy work correctly with arrays

This commit is contained in:
César Izurieta 2015-04-05 04:39:36 -03:00
commit 4f655e71d9

View file

@ -89,13 +89,24 @@ exports.deepCopy = function (obj) {
return obj;
var copy = cons();
for (var key in obj) {
if (typeof obj[key] === "object") {
copy[key] = exports.deepCopy(obj[key]);
} else {
copy[key] = obj[key];
if (Array.isArray(obj)) {
for (var key = 0; key < obj.length; key++) {
if (typeof obj[key] === "object") {
copy[key] = exports.deepCopy(obj[key]);
} else {
copy[key] = obj[key];
}
}
} else {
for (var key in obj) {
if (typeof obj[key] === "object") {
copy[key] = exports.deepCopy(obj[key]);
} else {
copy[key] = obj[key];
}
}
}
return copy;
};