js中对象的属性要注意的点以及在vue中watch对象的属性的方法

取对象值有两种方式,

const obj={

a:'1'

}

obj.a或者obj['a'],中括号还可以写成

const name = 'a'

obj[name]和obj['a']是一个意思。

然后在vue的watch要监听对象的属性,写法是

watch:{

'obj.a'(new,old){}

}

这样的方式。

然后对象的深度拷贝可以通过自己手写递归来实现,也可以通过JSON.parse(JSON.stringify(obj))来实现。

手写递归的话

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)

相关推荐
我笔记1 小时前
vue 子父调用
前端·javascript·vue.js
2401_860319521 小时前
在React Native鸿蒙跨平台开发中实现一个冒泡排序算法并将其应用于数据排序,如何进行复制数组以避免直接修改状态中的数组
javascript·算法·react native·react.js·harmonyos
毕设源码-朱学姐2 小时前
【开题答辩全过程】以 基于vue.js的校园二手平台为例,包含答辩的问题和答案
前端·javascript·vue.js
m0_471199632 小时前
【JavaScript】Set 和 Map 核心区别与实战用法(ES6 集合全解析)
前端·javascript·es6
执笔诉情殇〆2 小时前
使用AES加密方法,对Springboot+Vue项目进行前后端数据加密
vue.js·spring boot·后端
hoiii1872 小时前
MATLAB中主成分分析(PCA)与相关性分析的实现
前端·人工智能·matlab
小白|2 小时前
【OpenHarmony × Flutter】混合开发性能攻坚:如何将内存占用降低 40%?Flutter 引擎复用 + ArkTS 资源回收实战指南
开发语言·javascript·flutter
大波V53 小时前
用 nvm 彻底重装 Node 12.22.12(确保干净)
前端
和和和3 小时前
React Scheduler为何采用MessageChannel调度?
前端·javascript
Ric9703 小时前
Mac上Git不识别文件名大小写修改?一招搞定!
前端