递归
```js
function deepCopy(obj) {
if (!obj || typeof obj !== 'object') return obj;
var target = isPlainObject(obj) ? {} : [],
property, val;
for (var key in obj) {
val = obj[key];
// 防止循环引用
if (val === obj) continue;
if (Array.isArray(val) || isPlainObject(val)) {
target[key] = deepCo
继续阅读 »