UNPKG

flo-utils

Version:
38 lines (30 loc) 587 B
/** * 支持基本类型 + 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; } export default deepCopy;