vue对象赋值的问题

以下是复制官方文档的内容, 一直没搞明白两种写法有什么区别呢

有时你可能需要为已有对象赋予多个新属性,比如使用 Object.assign() 或 _.extend()。在这种情况下,你应该用两个对象的属性创建一个新的对象。所以,如果你想添加新的响应式属性,不要像这样:

Object.assign(vm.userProfile, {
age: 27,
favoriteColor: 'Vue Green'
})

你应该这样做:

vm.userProfile = Object.assign({}, vm.userProfile, {
age: 27,
favoriteColor: 'Vue Green'
})


隔江千里
浏览 949回答 1
1回答

HUWWW

意思就是说不要为了创建新对象就把原来的覆盖掉了。看以下例子var arr=[1]; arr.splice(0,1); //[] 第一种方法相当直接修改了原数据arr.concat(2);   //[1] 第二种返回新数据,原数据不变
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Vue.js