概述
文章目录
- 前言
- 一、对象的属性
- 二、访问器属性
- 总结
前言
知识来源《JavaScript高级程序设计》第六章
一、对象的属性
随便创建一个对象
let person = {};
Object.defineProperty(person,"name",{
configurable: true,
ennmerable: true,
writeableL true,
value: "noName"
});
//具体作用说一下就行了不展示了 原因就是 懒
简单介绍一下这个四个属性的作用
configurable::代表person.name属性是否可以通过delete 删除然后重写,默认是true代表可以重写反之false不可以
ennmerable::代表person.name属性是否可以通过for in去循环,默认是true代表可以循环反之false循环将找不到这一属性
writeable:控制person.name可写性的开关,默认是true代表可以修改反之false不可以修改
value:就代表person.name的值
二、访问器属性
代码如下(示例):
//随便什么方式创建对象都行
let Person = {};
//创建一个属性message
Person.message = "noMessage";
//也可以使用defineProperty设置单个属性,但是我觉得这样写是多个属性
/*
**作用都是一样的
Object.defineProperty(Person,message,{
get(){},
set(){}
})
*/
Object.defineProperties(Person,{
//真实返回的属性值
_message:{
value:'noMessage'
},
message:{
get(){
return this._message
},
set(val){
if(val === "god"){
this._message = val
}
}
}
})
Person.message = "god";
console.log(Person.message) //god
Person.message = "godness";
console.log(Person.message) //noMessage
这里可以看到message属性的get和set气到了一个拦截的作用。当我们修改Person.message的值的时候
首先是需要触发访问器set()属性的修改完成后,再通过get()把真正的值返回出来。
总结
介绍有点简单粗暴,自己举一反三试一下就知道了!!!
最后
以上就是甜甜指甲油为你收集整理的JS对象属性前言一、对象的属性二、访问器属性总结的全部内容,希望文章能够帮你解决JS对象属性前言一、对象的属性二、访问器属性总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复