当前位置: 首页 > news >正文

商城网站 运营全网营销图片

商城网站 运营,全网营销图片,网站设计公司地址,网站建设工期时间表JS中对象的浅拷贝,深拷贝和引用 浅拷贝和深拷贝的区别主要在于它们如何处理引用类型的数据(如数组和对象),而引用简而言之就是换了个变量名。 浅拷贝 引用:浅拷贝只复制对象的第一层属性,对于嵌套的对象或…

JS中对象的浅拷贝,深拷贝和引用

浅拷贝和深拷贝的区别主要在于它们如何处理引用类型的数据(如数组和对象),而引用简而言之就是换了个变量名。

浅拷贝

  • 引用:浅拷贝只复制对象的第一层属性,对于嵌套的对象或数组,它只复制引用而不是创建新的空间。这样,浅拷贝后的新对象和原对象中的嵌套对象仍然指向同一个内存地址。

  • 方式:可以使用扩展运算符 ...Object.assign() 进行浅拷贝。

  • 示例

    const original = { a: 1, b: { c: 2 } };
    const shallowCopy = { ...original };
    shallowCopy.b.c = 3;
    console.log(original.b.c); // 输出 3
    

深拷贝

  • 创建新的空间:深拷贝会递归地复制对象的每一层属性,对于嵌套的对象或数组,它会创建新的空间存储数据,因此新对象和原对象完全独立。

  • 方式:可以使用 JSON.parse(JSON.stringify())、第三方库如 Lodash 的 _.cloneDeep() 方法,或者手动实现递归拷贝。

    • 使用JSON.parse(JSON.stringify(option))的方式会丢失function方法,导致tooltip中的formatter消失,
    • 引入lodash中的深拷贝来进行复制:
      • import _ from ‘lodash’;
      • let tmpOption = _.cloneDeep(option)
  • 示例

    const original = { a: 1, b: { c: 2 } };
    const deepCopy = JSON.parse(JSON.stringify(original));
    deepCopy.b.c = 3;
    console.log(original.b.c); // 输出 2
    

深浅拷贝区别总结

  • 浅拷贝:只复制一层属性,对于嵌套结构只复制引用。适合处理简单对象,不适用于需要完全独立的数据副本。
  • 深拷贝:递归复制所有层次的属性,完全独立于原对象。适合处理复杂对象和深层嵌套的结构。

引用和浅拷贝

let param1 = this.customInsertInformation;
param1.insertDialogVisible = false;

这里,param1 只是一个对 this.customInsertInformation 的引用。当你修改 param1.insertDialogVisible 的值时,实际上是在修改 this.customInsertInformation 对象的 insertDialogVisible 属性。

这就不同于浅拷贝(使用扩展运算符...),后者会创建一个新的对象,不会影响原始对象的属性。如果你希望在不影响原对象的情况下创建一个新的对象,使用浅拷贝或深拷贝的方法会更合适。

例如:

let param1 = { ...this.customInsertInformation };
param1.insertDialogVisible = false;
// this.customInsertInformation 不会改变
http://www.dinnco.com/news/84765.html

相关文章:

  • 外贸网站代码高佣金app软件推广平台
  • 新乡网站建设设计线上宣传渠道有哪些
  • 做网站最省钱实时热搜
  • 其他公司做的网站系统没授权能用吗免费的个人主页网页制作网站
  • 英国有哪些做折扣的网站建设网站的步骤
  • 什么是网站的主页站长之家ip查询工具
  • 专做韩国代购的网站百度云盘登录
  • 网站推广推广可以免费领取会员的软件
  • 卧龙区网站建设价格5151app是交友软件么
  • 如何做自己的网站或者论坛网络推广服务商
  • 网站建设的技术亮点优化的定义
  • 做网站被骗五千多网站为什么要做seo
  • sns网站需求抖音矩阵排名软件seo
  • 做外贸网站维护费是多少中国搜索引擎有哪些
  • 南宁国贸网站建设win7优化大师免安装版
  • 牛商网做的网站如何百度关键词搜索工具
  • 在哪里个网站找专业做ps的人东莞网站公司
  • wordpress saharanseo引擎优化外包公司
  • 网站域名如何续费百度下载安装免费
  • 上海有色金属门户网站佳木斯seo
  • 蓬安网站建设短视频seo询盘获客系统
  • 如何做网站内部优化seo外链建设的方法
  • 微商网站如何做推广方案谷歌下载官网
  • 哪些网站可以做微课今日微博热搜榜前十名
  • 建设自己网站教程线上推广策略
  • 怎么做网站广告卖钱百度网络营销
  • 北京网站建设方案软件武汉seo工作室
  • wordpress sandbox优化设计答案大全英语
  • 手机价格网站建设游戏推广话术
  • wap网站 什么意思百度推广账号登录