7条回答 默认 最新
- 崽崽的谷雨 2021-07-02 10:25关注
.
var obj={a:"99",b:[]}; let {a,b}=obj; a="887"; b.push("998"); console.log(a,b,obj)
你如果企图直接b = 887来改obj.b的值,那是不可能的,因为之前b和obj.b只是指向同一个内存地址, 当b = 887后,b指向的位置改变了,但是obj.b的位置没变.而采用我上面代码的方式,就是改变那个地址的值,所以他们都会同时改变。结构式重新定义了变量赋值给他。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
- ¥15 Macbookpro 连接热点正常上网,连接不了Wi-Fi。
- ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
- ¥15 linux驱动,linux应用,多线程
- ¥20 我要一个分身加定位两个功能的安卓app
- ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
- ¥15 IAR程序莫名变量多重定义
- ¥15 (标签-UDP|关键词-client)
- ¥15 关于库卡officelite无法与虚拟机通讯的问题
- ¥15 目标检测项目无法读取视频