请问微信小程序中,为什么我改变了obj的值,objtmp也会跟着变?

狄工 发布于 02/20 22:19
阅读 480
收藏 1

我不理解的地方在于

1、this.data.xxx = yyy,这样的赋值操作印象中应该可以的啊,因为多用setData会造成性能问题,

我印象中this.data.xxx = yyy这样的赋值方法仅仅是不会即时显示在模版上,而setData是会即时显示在模板上,我的理解有不对的么?

2、如图当我在onload方法中赋值了objtmp后,我没在继续操作这个变量了,为什么在buttonclick方法中我改变obj,也会使得objtmp发生变化?

加载中
0
闪电阿鸵
闪电阿鸵

这俩内存地址是一个呀,对象是引用数据类型。

0
侯坤林
侯坤林
这两个都是同一个引用,都指向了param这个变量的内容,可以考虑用this.dada.objtemp={...param}这种方式来赋值
0
gloomyzerg
gloomyzerg
js的对象可以理解为指针或引用类型,直接赋值是没有copy的
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部