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

取对象值有两种方式,

const obj={

a:'1'

}

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

const name = 'a'

objname和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)){

cloneitem = deepClone(duixiangitem)

}

}

return clone

}

const newObj = deepClone(obj)

相关推荐
唐诗16 小时前
改 3 行配置,我的 Tauri dev 冷启动从 100 秒干到 4 秒
前端·客户端
SmartBoyW16 小时前
深入ECMAScript规范:彻底搞懂JS隐式类型转换与底层ToPrimitive机制
前端·javascript
牧艺16 小时前
Cursor Rules / Skills 分层设计:让 Agent 像「团队新同事」
前端·人工智能·cursor
咪库咪库咪17 小时前
vue3-组件
vue.js
光影少年17 小时前
react navite 跨端核心原理
前端·react native·react.js
用户8524950718417 小时前
解密 JavaScript 中的 this:谁才是真正的调用者?
javascript·面试
monologues17 小时前
Vue 3 渲染器的核心秘密:从 VNode 创建到快速 Diff 算法
前端
奇奇怪怪的17 小时前
从开发到生产——生成优化、监控、安全与成本
前端
10share17 小时前
100行代码 模拟实现Vue 响应式系统
前端·vue.js
Heo17 小时前
Vite进阶用法详解
前端·javascript·面试