blob: 8c7cfbd0c0321c76b0e8e38c59510a71f2873651 [file] [log] [blame]
/**
* The MIT License (MIT)
* Copyright (c) 2017-present Dmitry Soshnikov <dmitry.soshnikov@gmail.com>
*/
'use strict';
/**
* Performs a deep copy of an simple object.
* Only handles scalar values, arrays and objects.
*
* @param obj Object
*/
module.exports = function clone(obj) {
if (obj === null || typeof obj !== 'object') {
return obj;
}
var res = void 0;
if (Array.isArray(obj)) {
res = [];
} else {
res = {};
}
for (var i in obj) {
res[i] = clone(obj[i]);
}
return res;
};