关于对象的数据属性
来源:互联网 发布:淘宝求购区在哪里 编辑:程序博客网 时间:2024/06/06 05:39
javascript中对象是经常用到的东西,今天我来写一些对于创建对象时,定义属性时的一些特征值。
这些特征值不能直接访问,下面举例说明。
var a={
'name':'kasol',
'age':18,
'hobby':'ES'
};
在定义了这个对象之后,该对象上有一个name属性,以这样的方式被创建时,name属性上有4个特征值,分别是
[[Configurable]] ,[[Writable]] ,[[Enumerable]], [[Value]].
[[Configurable]]表示能否配置,即能否通过delete来删除某一个属性,或者能否修改属性的特性,或者修改为访问器属性,如果为false,那么非严格模式下进行上述操作则不会有效果,严格模式下则会报错。
[[Writable]]表示能否修改属性的值,如果此项为false,那么a.name='moon'不会有效果。
[[Enumerable]]表示能否被for in 循环枚举出来,如果此项为false,for in 循环下不会把此属性输出。
[[Value]]表示该属性的值,读操作从这里读,写操作也会覆盖该项,默认值为undefined。
想要修改某个对象的属性的特征值,要用Object.defineProperty(obj,property,descriptor);
比如Object.defineProperty(a,'name',{writable:false,value:'moon'});
第一个参数是要更改的目标对象,第二个是要更改的属性,第三个是描述符,是一个特征值的对象。
有一点要注意,假如使用了该方法将Configurable设为false以后,就不能再对除了writable之外的特征值进行更改了,即使是Configurable=true也不行
- 关于对象的数据属性
- DOM中关于对象范围的属性
- 关于XMLHttpRequest对象的responseText属性
- 关于XMLHttpRequest对象的responseText属性
- 关于DataGrid对象的属性设置(VB)
- js关于对象的innerHTML属性问题
- JS 关于对象属性的访问
- 关于XMLHttpRequest对象的responseText属性
- 关于Excel的对象、方法和属性
- 关于对象属性行为configurable的问题
- apche的BeanUtils____封装对象属性数据
- 数据对象的属性(特征)类型
- Javascript对象的数据属性和访问器属性
- 关于js对象属性
- 关于给javascript对象添加、删除、修改对象的属性
- 关于输出类的对象数据
- 关于对象数据封装的一点感悟
- 关于Excel Spreadsheet 对象的属性的定义
- 在js中基本类型与引用类型的详解
- error LNK2019: 无法解析的外部符号 _GET_X_LPARAM,该符号在函数 _WndProc@16 中被引用
- ewrtert
- C++ Primer(第五版)练习3.40
- 进阶篇:同步阻塞队列之LinkedBlockingQueue(十一)
- 关于对象的数据属性
- Linux学习之shell脚本——变量
- RDD的简介
- day22_baseEnhance
- Linux中的工作队列
- Java 8:不要再用循环了
- 355. Design Twitter(unsolved)
- poj3684 Physics Experiment(加解析)
- JAVA学习笔记之选择排序与冒泡排序