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会自动调用


至此,结束。

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

相关推荐
91刘仁德1 分钟前
Linux网络编程从入门到实战:UDP/TCP协议与socket编程全解析
linux·网络·笔记·tcp/ip·udp
@Mike@7 分钟前
13-数据库学习笔记(查询执行处理模型)
数据库·笔记·学习
Go Work25 分钟前
实体类字段用 @Value 赋了默认值,取出来还是 null?
经验分享·笔记
白杨尚青29 分钟前
C++入门篇(十三):vector(上)——动态数组:构造、空间增长与迭代器失效
开发语言·c++·笔记·算法·stl
vx_Biye_Design38 分钟前
expressDeepSeek社团咨询助手的学生社团管理系统60746-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·python·课程设计·express
传奇开心果编程44 分钟前
【ArkUI进阶练中学】第13课:元服务与卡片开发
学习·ui·华为·harmonyos
vx_Biye_Design1 小时前
springboot宠物领养与救助平台64334-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·mysql·课程设计·宠物
vx_Biye_Design1 小时前
django就业信息推荐系统61953-计算机课程设计、毕业设计
java·vue.js·spring boot·python·架构·django·课程设计
羲云1 小时前
给 Vue 页面加个 Markdown 编辑器:ME.js 的接入、图片粘贴与音视频
javascript·vue.js
专业程序开发源1 小时前
springboot高校学生社团管理系统74810-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·spring·php·课程设计