位置: IT常识 - 正文

js中对象数据类型的深拷贝方法(5种)(js对象数据类型有哪些)

编辑:rootadmin
js中对象数据类型的深拷贝方法(5种)

目录

一、使用JSON暴力转换

二、 使用拓展运算符+解构赋值

三、 使用对象的合并,即通过Object.assign()方法

四、通过遍历对象

五、利用循环递归


一、使用JSON暴力转换

推荐整理分享js中对象数据类型的深拷贝方法(5种)(js对象数据类型有哪些),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js中对象数据类是什么,js中对象数据类有哪些,js对象类型的语法规则,js 对象数组方法,js中对象数据类有哪些,js中对象数据类有哪些,js对象数据类型有哪些,js中对象数据类是什么,内容如对您有帮助,希望把文章链接给更多的朋友!

js中对象数据类型的深拷贝方法(5种)(js对象数据类型有哪些)

        通过JSON.stringify() 和 JSON.parse() 将对象转为字符串之后在转为对象。

var obj = {name:'123'};var obj2 = JSON.parse(JSON.stringify(obj))二、 使用拓展运算符+解构赋值

        该方法的局限性在于,当值为undefined、function、symbol会在转换过程中被忽略。

var obj = {name:'123',age:13};var obj2 = {...obj}三、 使用对象的合并,即通过Object.assign()方法

        注意:该方法的第一个参数必须是空对象

var obj = {name:'123',age:13};var obj2 = Object.assign({},obj);四、通过遍历对象var obj1 = {name:"123"};var obj2 = {};for(x in obj1) { obj2[x] = obj1[x];}五、利用循环递归

        以上四种方法只能进行一层拷贝,即当对象的属性值也是对象时,就无法实现该属性的深拷贝,在这里提供一种利用循环递归进行深拷贝的方法。

var obj = { name: "123", sex: { age: "小花" } }; var newObj = {}; function deepClone(obj, newObj) { var newObj = newObj || {}; for (let key in obj) { if (typeof obj[key] == 'object') { newObj[key] = (obj[key].constructor === Array) ? [] : {} deepClone(obj[key], newObj[key]); } else { newObj[key] = obj[key] } } return newObj; } console.log(deepClone(obj, newObj));//{name: "123",sex: {age: '小花'}}
本文链接地址:https://www.jiuchutong.com/zhishi/297710.html 转载请保留说明!

上一篇:基于pyecharts的中医药知识图谱可视化(pyecharts怎么用)

下一篇:火爆全网的ChatGPT让AI回答你的任何问题!国内免费用!!(火爆全网的头像男)

  • 全千兆和双千兆路由器有什么不同(全千兆和双千兆路由器怎么选)

    全千兆和双千兆路由器有什么不同(全千兆和双千兆路由器怎么选)

  • 苹果X有没有分屏功能(苹果x有没有分屏模式)

    苹果X有没有分屏功能(苹果x有没有分屏模式)

  • 苹果换新设备无法充值(苹果换新机后)

    苹果换新设备无法充值(苹果换新机后)

  • 微信对方没删除我,我添加他会收到提醒吗(微信对方没删除自己再添加时显示来自手机号搜索)

    微信对方没删除我,我添加他会收到提醒吗(微信对方没删除自己再添加时显示来自手机号搜索)

  • 电脑屏幕自己变大怎么办(电脑屏幕自己变黑)

    电脑屏幕自己变大怎么办(电脑屏幕自己变黑)

  • vivoy85和y85a有什么区别(vivoy85和y85a哪个好)

    vivoy85和y85a有什么区别(vivoy85和y85a哪个好)

  • 微型计算机硬件系统最主要的部件(微型计算机硬件系统)

    微型计算机硬件系统最主要的部件(微型计算机硬件系统)

  • 一个微信可以加多少人(一个微信可以加入两个企业吗)

    一个微信可以加多少人(一个微信可以加入两个企业吗)

  • 声卡为什么要安装机架(声卡为什么安装不了)

    声卡为什么要安装机架(声卡为什么安装不了)

  • 读卡器能当u盘使用吗(读卡器当u盘装电脑系统)

    读卡器能当u盘使用吗(读卡器当u盘装电脑系统)

  • 开通qq大会员会点亮黄钻吗

    开通qq大会员会点亮黄钻吗

  • cad主要用于(cad常用于哪些领域)

    cad主要用于(cad常用于哪些领域)

  • 华为手机声音太小怎么办(华为手机声音太小怎么调大声音量)

    华为手机声音太小怎么办(华为手机声音太小怎么调大声音量)

  • 美团商家接单没有骑手接单怎么办(美团商家接单没有骑手接单怎么赔偿)

    美团商家接单没有骑手接单怎么办(美团商家接单没有骑手接单怎么赔偿)

  • 苹果11虚拟键怎么设置(苹果11虚拟键怎么调出来)

    苹果11虚拟键怎么设置(苹果11虚拟键怎么调出来)

  • 手机没网了怎么办(手机没网了怎么充值)

    手机没网了怎么办(手机没网了怎么充值)

  • wps文字怎么打印(wps文字怎么打印满A4)

    wps文字怎么打印(wps文字怎么打印满A4)

  • 小米6原装快充几w的(小米原装快充多少钱)

    小米6原装快充几w的(小米原装快充多少钱)

  • 快手极速版怎么按暂停(快手极速版怎么赚钱)

    快手极速版怎么按暂停(快手极速版怎么赚钱)

  • 天猫和淘宝是一家吗(天猫和淘宝是一个账号吗)

    天猫和淘宝是一家吗(天猫和淘宝是一个账号吗)

  • 在计算器上on c叫做什么键(在计算器上once是什么键)

    在计算器上on c叫做什么键(在计算器上once是什么键)

  • 怎样看自己的手机号码(怎样看自己的手机是否被别人监控)

    怎样看自己的手机号码(怎样看自己的手机是否被别人监控)

  • 怎么把时间和天气设置到桌面(怎么把时间和天气设置到主屏幕上)

    怎么把时间和天气设置到桌面(怎么把时间和天气设置到主屏幕上)

  • qq资料访客记录在哪看(qq访客记录是代表进空间了吗)

    qq资料访客记录在哪看(qq访客记录是代表进空间了吗)

  • 外接显示器黑屏(笔记本接hdmi外接显示器黑屏)

    外接显示器黑屏(笔记本接hdmi外接显示器黑屏)

  • 个人所得税如何办理退税
  • 小微企业免税销售额是按1%还是3%
  • 费用计入管理费用与销售费用的区别
  • 代订餐如何赚钱
  • 营业外收入怎么结转到本年利润
  • 工资及工资性支出
  • 机动车换车
  • 年末结转流程图
  • 贴息是谁支付
  • 外购商品用于促销能抵扣吗
  • 挂靠费如何纳税?
  • 劳务公司的主营业务成本是人工工资需要个人开发票吗?
  • 期望和方差的计算例题
  • 出口退税转内销还是转免税好
  • 债券分期还本利息怎么算
  • 出纳现金管理的目标与方法
  • 0xc000007b应用程序无法正常启动win11
  • PHP:curl_close()的用法_cURL函数
  • 打印机疑难解答显示打印机问题
  • koc文件用什么软件打开
  • vue-admin-master
  • PHP:imagecopymergegray()的用法_GD库图像处理函数
  • 关联方利息支出标准比例
  • javaweb入门简单小项目
  • 主营业务收入月末需要结转吗
  • vue使用技巧
  • setdo指令
  • JS初识
  • 事业单位一级项目和二级项目区别
  • 进项大于销项附加税怎么处理
  • ajax json请求
  • 电子承兑提示付款提前几天
  • 增值税税率为零的有哪些项目
  • 重复报销怎么写情况说明
  • 教育培训业能享受补贴吗
  • 货款已退回货已收到怎么办
  • 固定资产改造的配件怎么入账
  • 购买软件使用权计入无形资产吗
  • 税金及附加多计提了怎么办
  • 房地产开发企业分为几个等级
  • 临时工工资无发票个税怎么申报
  • 搬迁赔偿款
  • 免抵退账务处理流程
  • 结转完工入库产品成本的会计分录
  • 以前年度财务费用漏记
  • 包工包料怎么开13个点发票
  • 收到代收款需要开票吗
  • 辅助生产成本如何结转
  • mybatis collection 多条件查询的实现方法
  • mysql无法连接10055
  • 使用灭火器人要站在上风口还是下风口
  • linux 编译命令
  • xp系统鼠标右键无法弹出菜单
  • 联想yogas
  • winrecon.exe - winrecon是什么进程
  • securecrt输入中文乱码
  • 关于windows的说法正确的是
  • win10磁贴保存位置
  • win10任务栏不显示输入法
  • gridview获取列数据
  • opengl详解
  • node. js教程
  • bat批处理命令大全
  • ajax动态加载json数据
  • 安卓摄像头设置在哪里
  • ubuntu on android
  • unity3d开发流程
  • 如何防止蟑螂爬到床上
  • 阿里巴巴技术文档翻译工资
  • python的redis
  • 产品税务编号查询系统官网
  • 河北税务怎么查询交了没有
  • 大连明珠卡手机nfc充值
  • 旧房转让土地增值税扣除项目
  • 为什么医保卡显示无效
  • 河北省国税局发展前景
  • 税务协查工作亮点
  • ca登录的用户名和密码分别是什么
  • 企业对税务局建议
  • 一人可以在多家企业上班吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设