`
youyu4
  • 浏览: 425926 次
社区版块
存档分类
最新评论

JS对象属性“可枚举”

 
阅读更多

对象属性可枚举,表示该属性的值不可修改,可认为该属性是常量。

 

如何定义不可枚举的属性?

var obj = {name: 'jack', age:23}

Object.defineProperty(obj, 'id', {value : '123', enumerable : false });

 

获得对象实例属性集的方法:(实例属性指该属性仅存在于当前对象中)

1. 

Object.keys(obj);    // 获得对象上所有可枚举的“实例属性”

2. 

Object.getOwnPropertyNames(obj) ;//获得对象上所有的“实例属性”

 

判断对象是否拥有某实例属性的方法:

obj.hasOwnProperty(‘id’); //只要该对象obj拥有属性id, 无论id是否可枚举,都返回true

 

for(var i  in obj){ } // 表示访问对象所有可枚举的属性,包括可枚举的实例属性和可枚举的原型对象的属性

 

“name”  in obj   // 通过对象能够访问给定属性名时返回true, 无论该属性存在于实例中还是原型对象中

 

原文:http://blog.csdn.net/haojianfeng11/article/details/16331963

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics