首页 > 原创文章 > 软件开发 > 查看文章

Javascript复制对象改变原值的解决办法

所属分类:软件开发 来源: 丁老师原创 更新时间:2024-05-25 10:50 浏览: 3892 IP属地: 深圳

在进行vue开发中,经常会遇到复制对象,赋值新对象后,原对象值被改变的问题,举个例子:

let old={
    "a":1,
    "b":2
}
let new=old;
new['c']=3;

这个时候你会发现,不但new的c=3,old也有了c=3的键值,这个问题是怎么回事呢?

其实我们不必纠结为什么,知道怎么解决就可以了,用下边的方法:

let new=Object.assign({},old);

这样写,就不会影响原对象,完美解决!

标签:

相关文章

FastAdmin非菜单链接,跳转菜单页面的...

在fastadmin中,一个页面的非菜单链接,想要点击后打开指定页面,并且菜单自动展开,该怎么实现呢?经过丁老师研究后,发现超级简单,废话不多说,直接上代码:<a class="btn-addtabs" hre...

百度Ueditor附件上传去除前边的图标

百度ueditor在使用附件上传时,会自动在附件链接前边添加一个图标,这个图标不仅不美观,而且会暴露出ueditor的真实地址,给不法分子可乘之机,所以研究了下直接去掉。解决方法:ueditor.all.js里搜索dialogs/att...

Mysql给时间字段增加和减少时间的写法(1...

Mysql给时间加1年的方法,可以批量更新,如果是单条数据请注意sql语法date类型(如2025-06-28)#增加一年 update table set date_time=date_add(date_time,interval 1...

Java如何在请求中加入参数?

在Java中,提交请求时加入参数有两种方法:一、把参数直接写在url中,如:如请求url是https://www.aaa.com,参数是name=kevin,gender=2,那么可以直接把请求url写成https://www.aaa....

推荐文章

Python3.12提示windows No...

在使用python3.12时突然遇到提示windows No module named distutils,研究了一下,把解决办法分享出来。1.安装 setuptools,它现在也提供 distutils;2.从第三方源(如系统软件包)载入...

CodeIgniter框架URL如果去掉in...

在使用PHP框架CI时,有个很恶心的地方就是他的URL需要带上index.php,比如我要建一个user模块,想要实现www.xxx.com/user/的效果,但是在CI框架下必须要www.xxx.com/index.php/user这样才...

BT宝塔升级方法

由老版本7.2自动升级时,会出现很多问题,建议在终端手动升级。升级命令:curl http://download.bt.cn/install/update_panel.sh|bash

微信小程序从开发到实现微信支付的全过程

微信小程序部分一、完善小程序基本信息1.用管理员账号登录微信小程序(https://mp.weixin.qq.com/);2.左侧菜单选择首页;3.完善小程序的基本信息,包括小程序名称、小程序类目、微信认证、微信备案等。二、小程序开发配置1...

当前在线
免费咨询