JavaScript深拷贝Json
今天因为项目需要写了个Json格式的深拷贝(深度复制)。很简单,没有做其他的判断,代码如下:
function deepCopy(json){if(typeof json == 'number' || typeof json == 'string' || typeof json == 'boolean'){return json;}else if(typeof json == 'object'){if(json instanceof Array){var newArr = [], i, len = json.length;for(i = 0; i < len; i++){newArr[i] = arguments.callee(json[i]);}return newArr;}else{var newObj = {};for(var name in json){newObj[name] = arguments.callee(json[name]);}return newObj;}}
}
刚才还犯了个错误,在使用concat连接数组的时候,还以为concat返回了一个新的数组,其实没有。concat方法不能用来做深拷贝。
转载于:https://www.cnblogs.com/realwall/archive/2011/11/23/2260858.html
JavaScript深拷贝Json相关推荐
- typescript或javascript深拷贝Object json
typescript或javascript深拷贝Object json Object的json对象很多时候我们需要深拷贝,我写了两个工具函数,供大家参考. deepCopyObject 深拷贝一个Ob ...
- js 对象深拷贝_这一次,彻底理解JavaScript深拷贝
导语 这一次,通过本文彻底理解JavaScript深拷贝! 阅读本文前可以先思考三个问题: JS世界里,数据是如何存储的? 深拷贝和浅拷贝的区别是什么? 如何写出一个真正合格的深拷贝? 本文会一步步解 ...
- javascript深拷贝和浅拷贝
在JavaScript中,存在着这样的两种拷贝方式.分别是:深拷贝和浅拷贝,这两种拷贝在实际中非常的常见,如果读者是一个阅读源码的爱好者,相信多多少少对深拷贝和浅拷贝有所了解. 一.浅拷贝 浅拷贝在现 ...
- 4种JavaScript深拷贝的方法
浅拷贝与深拷贝 浅拷贝是创建一个新对象,这个对象有着原始对象属性值的拷贝.如果属性是基本类型,拷贝的就是基本类型的值,如果属性是引用类型,拷贝的是内存地址 . 如果不进行深拷贝,其中一个对象改变了对象 ...
- html5展示json数据库,显示数据在html5从数据库使用javascript和json
我想从MySQL数据库显示在html中的列表.要从MySQL获取数据我使用json和javascript.但它什么也没有显示!显示数据在html5从数据库使用javascript和json 我的HTM ...
- JavaScript对Json的增删改属性
<script type="text/javascript">var json = {"age":24,"name":" ...
- JavaScript解析Json字符串
JavaScript可以解析服务器接口返回的json字符串(一般用于Ajax),而不需要json的额外支持. 在JavaScript中可以通过eval()方法将一个json字符串解析成一个JavaSc ...
- php用json交换二维数组,PHP和Javascript的JSON交互(处理一个二维数组)
我不得不承认:我是一个彻彻底底的JS白痴.但根据项目需要,不得不使用JSON,不管怎么说,经过一个晚上的学习,已经略有所成,记录下来. PHP的JSON类库我使用的是Services_JSON,没什么 ...
- JSON数据格式----- JavaScript与JSON、JavaScript的JSON对象、构建JSON格式数据
JavaScript与JSON JSON是一种语法,用来序列化对象.数组等的.它只是基于JavaScript语法 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zWMc ...
最新文章
- CentOS7-64bit 编译 Hadoop-2.5.0,并分布式安装
- bnpparibas
- 简朴的生活、高贵的灵魂是人生的至高境界。——杨绛
- macbookpro接口叫什么_【科普】什么是雷电接口?苹果电脑MACBOOK PRO有吗?
- 数学 之 hdu 4710 Balls Rearrangement
- java判断map是否为空_Java自定义Exception
- 文件服务器 选型,文件服务器选型
- 我的电脑缩略图模式盘符名字不见了
- NetAssist网络调试助手,学习网络编程第一步
- mysql客户端navicat怎么连接_Navicat使用详解(mysql客户端工具)
- 数学建模 相关系数(皮尔逊相关系数和斯皮尔曼相关系数)
- mysql nutch,nutch结合mysql配置
- php定做单城市公交路线查询系统
- 回顾马云屌丝岁月的惨状:多次被拒失声痛哭
- John F. Kennedy的就职演说(在线收听)
- 华为鸿蒙Matepad 11,你值得拥有的学习、娱乐、办公利器
- 144Hz风冷旗舰:红魔5G游戏手机“比快更快”
- ATMEGA88PA-AU(工作原理图)
- 新型的领导者是一名推动者,而不是一名发号施令者
- 芯片电源去耦电容为什么要靠近电源放置