属性描述符
来源:互联网 发布:二本学校当老师 知乎 编辑:程序博客网 时间:2024/06/05 06:50
对象中有一些属性是不想让外人所更改,所随意操作的,这个时候我们就用一种手段来保护它,就用到了属性描述符
<script type="text/javascript">Object.defineProperty(obj,"key",{enumerable:false;//是否可枚举/遍历configurable:false;//是否可配置:值为true和false(类似于是否可以使用类似 delete 这样的操作)writable:false;//是否可写的value:"static"//值,设置为静态说明不可改变});// 方式2:也可以一次指定多个 属性 的配置Object.defineProperties(this, {name:{value:name, // 默认值writable:false, // 可读写configurable:false, // 可配置(是否可以使用类似 delete 这样的操作)enumerable:true // 可枚举(遍历)},desc:{value: function(){console.log("i'm"+this.name);}, // 默认值writable:false, // 可读写configurable:false, // 可配置(是否可以使用类似 delete 这样的操作)enumerable:true // 可枚举(遍历)}})}</script>属性描述符的set,get方法
set,就是当你给一个东西赋值的时候就是set,
get,就是当你调用这个变量或属性的时候就是get
<script type="text/javascript"> function Student(name,age,phone){ this.age=age; Object.defineProperty(this,"name",{ value:"学生", configurable:false,//可否配置 writable:true,//可写不可写 }); Object.defineProperty(this,"todo",{ value:function(){ configurable:false; console.log(this.name+"去学校"); } }); Object.defineProperty(this,"phone",{ set:function(v){ if (v.length != 11) { alert("0 0
- 描述符属性
- 描述符属性
- JavaScript 属性描述符
- 属性描述符
- python 属性描述符
- JS属性特性(属性描述符)
- 设置socket描述符SO_REUSEADDR属性
- Python-属性控制与描述符
- 4-段描述符属性分析
- js 对象系列之属性描述符
- Python 中的属性访问与描述符
- JavaScript对象——属性描述符
- JS修改属性的默认特性(属性描述符)
- MediaPlayer控件属性描述
- MediaPlayer控件属性描述
- MediaPlayer控件属性描述
- EditText属性描述
- ListView属性描述
- 【转】console.log 用法
- 顺序栈和链栈
- Java反射小练习
- 强大的 Fresco(加载网络和本地图片)简单使用
- 线性筛和素性测试
- 属性描述符
- 50个PHP程序性能优化的方法
- 在WMware Workstation 12 Pro上安装及初步配置64位Ubuntu桌面系统
- gcc编译过程
- 空间算法工具类SpaceUtils
- HDU 2041 超级楼梯
- [心情]写博客的决心
- 自定义的Dialog
- SpringMVC日期和编码问题