首页IT科技Python深拷贝和浅拷贝(浅拷贝)

Python深拷贝和浅拷贝(浅拷贝)

时间2025-08-05 09:07:37分类IT科技浏览5131
导读:// 原数据 let y = { name: zhangsan...

// 原数据 let y = { name: zhangsan, age: 18, // 原数据中的子对象 language: [1, [2, 3], [4, 5]], }; // ish" target="_blank">创建第二个对象 把原数据赋值给它 let f = y; // 创建对象 对 元数据 进行拷贝 let c = shallowCopy(y); // 开始进行拷贝 function shallowCopy(this) { // 创建对象 let dst = {}; // 将每个数据都给到 dst 变量 for (let i in this) { dst[i] = this[i]; } return dst; } // 改变赋值中的 name 会改变原始数据 f.name = "lisi"; // 浅拷贝的改变只会让自己的数据发生变化 c.age = "20"; // 改变原数据赋值的变量 也会改变原数据 f.language[1] = ["二", "三"]; // 浅拷贝只是复制一层对象,不包括里面的对象 所以会使 原数据发生变化 c.language[2] = ["四", "五"]; // 原始数据 console.log(y); //y = { // name : lisi, // age : 18, // language : [1,["二","三"],["四","五"]], //}; // 赋值操作得到的 console.log(f); //f = { // name : lisi, // age : 18, // language : [1,["二","三"],["四","五"]], //}; // 浅拷贝得到的 console.log(c); //c = { // name : zhangsan, // age : 20, // language : [1,["二","三"],["四","五"]], //};
声明:本站所有文章             ,如无特殊说明或标注                     ,均为本站原创发布              。任何个人或组织       ,在未征得本站同意时      ,禁止复制              、盗用                    、采集       、发布本站内容到任何网站              、书籍等各类媒体平台                    。如若本站内容侵犯了原著者的合法权益                     ,可联系我们进行处理       。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
vue移动端项目实例(几款实用的VUE移动端UI框架)