前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JS遍历属性

JS遍历属性

作者头像
用户2936342
发布2018-08-27 14:55:37
9.5K0
发布2018-08-27 14:55:37
举报
文章被收录于专栏:nummynummy

可枚举属性

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

代码语言:javascript
复制
var obj = {name: 'jack', age:23}
Object.defineProperty(obj, 'id', {value : '123', enumerable : false });

获取对象所有可枚举属性

使用Object.keys(obj)可以获取对象obj自身所包含的所有可枚举属性。 例如:

代码语言:javascript
复制
  var arr = ["a", "b", "c"];
    console.log(Object.keys(arr)); // console: ["0", "1", "2"]


    var obj = { 0 : "a", 1 : "b", 2 : "c"};
    console.log(Object.keys(obj)); // console: ["0", "1", "2"]


    var an_obj = { 100: "a", 2: "b", 7: "c"};
    console.log(Object.keys(an_obj)); // console: ["2", "7", "100"]


    var my_obj = Object.create({}, { getFoo : { value : function () { return this.foo } } });
    my_obj.foo = 1;

    console.log(Object.keys(my_obj)); // console: ["foo"]

获取对象所有的实例属性

代码语言:javascript
复制
Object.getOwnPropertyNames(obj) ;//获得对象上所有的“实例属性”

判断对象是否拥有实例属性

代码语言:javascript
复制
obj.hasOwnProperty(‘id’); 
//只要该对象obj拥有属性id, 无论id是否可枚举,都返回true
for(var i  in obj){ } 
// 表示访问对象所有可枚举的属性,包括可枚举的实例属性和可枚举的原型对象的属性
“name”  in obj   
// 通过对象能够访问给定属性名时返回true, 无论该属性存在于实例中还是原型对象中
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016.04.08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 可枚举属性
  • 获取对象所有可枚举属性
  • 获取对象所有的实例属性
  • 判断对象是否拥有实例属性
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档