js中对象深拷贝和浅拷贝的不同是啥
发布时间:09/01 来源:未知 浏览:
关键词:
根本数据类型,拷贝是直接拷贝变量的值,而援用类型拷贝的其实是变量的地址。
而浅拷贝和深拷贝就是在这个根基之上做的区分,假如在拷贝这个对象的时候,只对根本数据类型停止了拷贝,而对援用数据类型只是停止了援用的传递,而没有从新创立一个新的对象,则认为是浅拷贝;
反之,在对援用数据类型停止拷贝的时候,创立了一个新的对象,并且复制其内的成员变量,则认为是深拷贝。
深拷贝实例代码:
let o2 = JSON.parse(JSON.stringify(o1)) function deepCopy(s) { const d = {} for (let k in s) { if (typeof s[k] == 'object') { d[k] = deepCopy(s[k]) } else { d[k] = s[k] } } return d }
浅拷贝实例代码:
let o2=Object.assign({},o1)
引荐教程:js入门教程
以上就是js中对象深拷贝和浅拷贝的不同是啥的具体内容,更多请关注百分百源码网其它相关文章!