Javascript深度拷贝
admin 90 2019-03-17 22:50:12
function deepClone(origin,target){
var target = target || {},//容错
toStr = Object.prototype.toString,//.call
arr = "[object Array]";//数组原型
for(var prop in origin){
if(origin.hasOwnProperty(prop)){//判断是否是自己的属性
if(origin[prop] !== 'null' && typeof(origin[prop]) == 'object'){//判断引用值还是原始值
target[prop] = (toStr.call(origin[prop]) == arr) ? [] : {};//判断是数组还是对象 然后相应建立数组/对象
deepClone(origin[prop], target[prop]);//循环递归
}else{//原始值
target[prop] = origin[prop];
}
}
}
return target;
}
To share this paste please copy this url and send to your friends
预览
还没有评论.
最新分享
- PHP用redis实现计数器功能从而实现限流
PHP | 48 | 2周前
- PHP批量下载QQ空间相册照片链接
PHP | 42 | 2周前
- PHP对一个接口进行请求次数限制
PHP | 32 | 2周前
- PHP汉字转拼音类文件
PHP | 34 | 2周前
- laravel 表单验证 api自定义错误信息返回json 与 路由别名场景验证
PHP | 37 | 2周前
- QQ或微信内打开网站提示用浏览器打开代码
PHP | 57 | 3周前
- 简易防CC攻击刷新跳转代码
PHP | 55 | 3周前