[VUE] 空数组直接赋值和push的区别
尽量用for (var i = 0; i < changearr_k.length; i++) {var obj = {};obj.key = changearr_k[i];obj.value = changearr_v[i];this.tableData.push(obj);}不推荐for (var i = 0; i < changearr_k.length; i++) {var o
尽量用
for (var i = 0; i < changearr_k.length; i++) {
var obj = {};
obj.key = changearr_k[i];
obj.value = changearr_v[i];
this.tableData.push(obj);
}
不推荐
for (var i = 0; i < changearr_k.length; i++) {
var obj = {};
obj.key = changearr_k[i];
obj.value = changearr_v[i];
this.tableData[i] = obj;
}
for循环中的两行代码,表面上实现了相同的功能,但是在vue中,使用空数组直接赋值后,页面上的数据并不会动态改变。而使用push方法后,页面上的内容就能正常发生变化了。
查阅后发现,用这两种方法,数组最后的长度相同,但是push添加的元素具有set和get方法,这样想通过点击改变edit值时可以生效的,而直接赋值添加的元素点击改变edit不生效。
作者:雨萌fyh
链接:https://www.jianshu.com/p/e8b2d68d4fc1
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
更多推荐
所有评论(0)