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)

相关推荐
韩立学长5 分钟前
【开题答辩实录分享】以《在线预问诊系统设计与实现》为例进行选题答辩实录分享
vue.js·spring boot·mysql
wuhen_n18 分钟前
@types 包的工作原理与最佳实践
前端·javascript·typescript
我是伪码农18 分钟前
Vue 1.27
前端·javascript·vue.js
秋名山大前端18 分钟前
前端大规模 3D 轨迹数据可视化系统的性能优化实践
前端·3d·性能优化
H79987424224 分钟前
2026动态捕捉推荐:8款专业产品全方位测评
大数据·前端·人工智能
ct97825 分钟前
Cesium 矩阵系统详解
前端·线性代数·矩阵·gis·webgl
小陈phd30 分钟前
langGraph从入门到精通(十一)——基于langgraph构建复杂工具应用的ReAct自治代理
前端·人工智能·react.js·自然语言处理
我要敲一万行30 分钟前
前端面试erp项目常问问题
前端·面试
37 分钟前
ubuntu 通过ros-noetic获取RTK模块的nmea格式数据
java·前端·javascript
雨季66639 分钟前
构建 OpenHarmony 简易密码强度指示器:用字符串长度实现直观反馈
android·开发语言·javascript