试题
考点

js语言和框架-JavaScript语言-深浅拷贝

面5笔5

说一下实现JS对象深拷贝的几种方法?

前往“校招VIP”小程序,刷题更快
最新校招难题刷题,快来进刷题群吧
解答

1. JSON.parse( JSON.stringify() ) 序列化和反序列

先将需要拷贝的对象进行JSON字符串化,然后再pase解析出来,赋给另一个变量,实现深拷贝。

2. Object.assign(target, source1, source2)

es6新增的方法,可用于对象合并,将源对象的所有可枚举属性,复制到目标对象上。

3. 迭代递归方法

基本上可以满足常用的数据结构的值的深拷贝,但因为js对象的数据结构较多,所以并不能全部覆盖,比如说new Number(),这种基本数据类型的包装对象,就没有进行处理。

因此在使用时,可以先对所要进行深拷贝的对象进行一个预判,来决定使用哪种方式。

评论
暂无评论

加载更多