flo-utils
Version:
46 lines (36 loc) • 722 B
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
/**
* 支持基本类型 + function
* 不支持环引用,symbol等
* @name 深拷贝
* @param {*} o
* @returns
*/
function deepCopy(o) {
if (o instanceof Array) {
var n = [];
for (var i = 0; i < o.length; i += 1) {
n[i] = deepCopy(o[i]);
}
return n;
}
if (typeof o === 'function') {
return o;
}
if (o instanceof Object) {
var _n = {};
for (var key in o) {
if (Object.prototype.hasOwnProperty.call(o, key)) {
_n[key] = deepCopy(o[key]);
}
}
return _n;
}
return o;
}
var _default = deepCopy;
exports.default = _default;
;