禁止添加属性、封闭对象、冻结对象的 API
2023-02-18 16:37:18 时间
1. 前言
除了设置对象的属性特征,对属性进行控制,系统也提供了一些简化的 API 来进行属性控制
2. 禁止添加属性的 API
// 禁止在对象中添加属性
Object.preventExtensions(user)
// 无法给对象新增属性
// 在非严格模式下不会抛出错误,在严格模式下会抛出错误
// user.site = 'doc.itqaq.com'
// 判断是否允许可以往对象中添加属性
if (Object.isExtensible(user)) {
user.site = 'www.itqaq.com'
}
3. 封闭对象的 API 操作
封闭对象: 不能添加和删除属性,也不能修改对象的属性特征。会自动设置属性特征 configurable: false
// 封闭对象
Object.seal(user)
// 判断对象是否处于封闭状态
if (!Object.isSealed(user)) {
user.site = 'add'
delete user.age
}
4. 冻结对象的 API 操作
封闭对象: 无法添加、删除、修改属性值,也不能修改对象的属性特征。自动修改属性特征 writable: false,configurable: false
// 冻结对象
Object.freeze(user)
// 判断对象有没有被冻结 true 已冻结
if (!Object.isFrozen(user)) {
user.site = 'add'
user.name = 'update'
delete user.age
}
相关文章
- SpringMVC自定义异常处理器简单模板
- Mybatis实现分页-分页类的模板(最基础的模板)
- SSM 整合 Shiro 简单应用
- SSM整合shiro-自定义过滤器(模板)
- shiro中的过滤器
- Windows 10 自带的截图快捷键
- Mybatis逆向工程(模板)
- Win10 WiFi图标没有解决方案
- java -POI的基本操作Excel
- Excel后缀名 .xls和.xlsx 有什么区别?
- SSM-POI的操作Exce模板导出
- 分享一个 JDK性能监控可视化工具(Jvisualvm)
- Java字符串数组转集合方法
- SSM整合-EasyExcel框架简化POI操作Excel
- 为什么说“丰田生产方式”是企业成长的关键?
- 算法是什么?简单介绍
- Java-定时任务调度技术 Quartz框架
- Java 跨项目调用技术 WebService
- Java技术点-消息中间件MQ
- SpringBoot中加载webjars/ 目录下,但webjars是什么?