取對象值有兩種方式,
const obj={
a:'1'
}文章來源:http://www.zghlxwxcb.cn/news/detail-833602.html
obj.a或者obj['a'],中括號還可以寫成
const name = 'a'
obj[name]和obj['a']是一個(gè)意思。
然后在vue的watch要監(jiān)聽對象的屬性,寫法是
watch:{
'obj.a'(new,old){}
}
這樣的方式。
然后對象的深度拷貝可以通過自己手寫遞歸來實(shí)現(xiàn),也可以通過JSON.parse(JSON.stringify(obj))來實(shí)現(xiàn)。
手寫遞歸的話
function deepClone(duixiang){
? ? ? ? if(duixiang===null||typeof duixiang !== 'object') return duixiang
? ? ? ? let clone=Array.isArray(duixiang)?[]:{}
? ? ? ? for(let item in duixiang){
if(duixiang.hasOwnProperty(item)){
? ? ? ? clone[item] = deepClone(duixiang[item])
}
}
? ? ? ? return clone
}
const newObj = deepClone(obj)文章來源地址http://www.zghlxwxcb.cn/news/detail-833602.html
到了這里,關(guān)于js中對象的屬性要注意的點(diǎn)以及在vue中watch對象的屬性的方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!