Vue学习笔记-Object.defineproperty函数

文章目录


前文提要

本人仅做个人学习记录,如有错误,请多包涵


Object.defineProperty作用

当在js中声明了一个变量,可以通过Object.defineProperty给已经确定属性的变量增加新的属性。

但是新增加的属性,如果没有经过修改,默认无法枚举(查询的时候有,但是无法出现在数组之中,例如Object.keys(person)中),无法被修改,无法被删除

除非特别设置

可以将enumerable设置为true来允许枚举,

将writable设置为true来允许修改,

将configurable来允许删除

Object.defineProperty参数

第一个参数是需要修改的变量,第二个是新增的属性,第三个是一个对象,里面有一系列的设置

使用例图

getter,也就是get函数

当有人查看了defineProperty这个这个函数这次修改的属性的时候,例如在控制台console输入person.age,getter会自动调用

setter,也就是set函数

当有人查看了defineProperty这个这个函数这次修改的属性的时候,例如在控制台console输入person.age = 20,setter会自动调用


至此,结束。

如果你觉得这篇文章写的不错,多多点赞~收藏吧!

相关推荐
柯南95274 分钟前
Vue 3 reactive.ts 源码理解
vue.js
柯南952715 分钟前
Vue 3 Ref 源码解析
vue.js
小高00737 分钟前
面试官:npm run build 到底干了什么?从 package.json 到 dist 的 7 步拆解
前端·javascript·vue.js
丑小鸭是白天鹅41 分钟前
嵌入式C语言学习笔记之枚举、联合体
c语言·笔记·学习
JayceM2 小时前
Vue中v-show与v-if的区别
前端·javascript·vue.js
楼田莉子2 小时前
C++算法题目分享:二叉搜索树相关的习题
数据结构·c++·学习·算法·leetcode·面试
HWL56792 小时前
“preinstall“: “npx only-allow pnpm“
运维·服务器·前端·javascript·vue.js
十一10242 小时前
FX10/20 (CYUSB401X)开发笔记5 固件架构
笔记
FakeOccupational2 小时前
【电路笔记 通信】AXI4-Lite协议 FPGA实现 & Valid-Ready Handshake 握手协议
笔记·fpga开发
秃头小傻蛋2 小时前
Vue 项目中条件加载组件导致 CSS 样式丢失问题解决方案
前端·vue.js