试验JavaScript属性默认值

时间:2012-10-18 19:35:11

标签: javascript

在读一本JavaScript书时,我读到了

  

"直接在对象" 上定义时,数据属性的所有属性都默认为true。

然后经过一些描述再次说明

  

"当您使用Object.defineProperty()" 时,可配置,可枚举和的值   除非另有说明,否则可写默认为false。

我想,在第一个声明"直接在一个对象上定义"表示使用点运算符或对象文字符号,如下所示:

var obj = new Object();
obj.name = "Mahesh";

但是,在通过任一方法将属性添加到对象后,是否有任何方法可以尝试检查这些属性的设置?

1 个答案:

答案 0 :(得分:3)

您可以使用getOwnPropertyDescriptor

> var desc = Object.getOwnPropertyDescriptor(obj, 'name');
{"value":"Mahesh","writable":true,"enumerable":true,"configurable":true}

desc将包含标记configurableenumerable。如果属性是数据描述符(无getset),则desc还将包含value和标记writable。如果属性是访问者描述符,desc还将包含getset方法。