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


至此,结束。

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

相关推荐
Amumu121382 小时前
Vuex介绍
前端·javascript·vue.js
星火开发设计2 小时前
C++ 预处理指令:#include、#define 与条件编译
java·开发语言·c++·学习·算法·知识
BugShare2 小时前
Obsidian 使用指南:从零开始搭建你的个人知识库
笔记·obsidian
css趣多多3 小时前
Vue过滤器
前端·javascript·vue.js
BackCatK Chen3 小时前
第 1 篇:软件视角扫盲|TMC2240 软件核心特性 + 学习路径(附工具清单)
c语言·stm32·单片机·学习·电机驱动·保姆级教程·tmc2240
深蓝海拓3 小时前
PySide6从0开始学习的笔记(二十五) Qt窗口对象的生命周期和及时销毁
笔记·python·qt·学习·pyqt
理人综艺好会3 小时前
Web学习之用户认证
前端·学习
●VON3 小时前
React Native for OpenHarmony:项目目录结构与跨平台构建流程详解
javascript·学习·react native·react.js·架构·跨平台·von
跃渊Yuey3 小时前
【Linux】线程同步与互斥
linux·笔记
AI视觉网奇4 小时前
FBX AnimSequence] 动画长度13与导入帧率30 fps(子帧0.94)不兼容。动画必须与帧边界对齐。
笔记·学习·ue5