JavaScript中遍历对象的property的3种方法介绍


Posted in Javascript onDecember 30, 2014

在JavaScript中,可以用三种方法来遍历对象的property:

1.for/in。可以使用for/in语句遍历对象自身的property(Own Property)及其从原型对象处继承的property,只有enumerable的property才会被遍历到。

2.Object.keys()。可以将对象作为参数传入Object.keys(),Object.keys()语句将返回由所有property名称字符串所组成的数组。Object.keys()语句仅返回对象自身的(Own Property)且enumerable的property。该语句仅在ECMAScript 5标准中有效。

3.Object.getOwnPropertyNames()。可以将对象作为参数传入Object.getOwnPropertyNames(),与Object.keys()一样,该语句将返回由所有property名称字符串所组成的数组。与Object.keys()不同的是,Object.getOwnPropertyNames()语句将返回所有对象自身的property(Own Property),而不论其是否为enumerable。该语句仅在ECMAScript 5标准中有效。

综合上述信息,总结成图如下:

JavaScript中遍历对象的property的3种方法介绍

实验:

var o = {x:1, y:2};

var a = Object.create(o);

a.z = 3;
for(p in a){

  console.log(p);

}//z x y

console.log(Object.keys(a));//["z"]

console.log(Object.getOwnPropertyNames(a));//["z"]
Javascript 相关文章推荐
js url传值中文乱码之解决之道
Nov 20 Javascript
javaScript矢量图表库-gRaphael几行代码实现精美的条形图/饼图/点图/曲线图
Jan 09 Javascript
多种方法实现JS动态添加事件
Nov 01 Javascript
jquery获取css中的选择器(实例讲解)
Dec 02 Javascript
iframe窗口高度自适应的实现方法
Jan 08 Javascript
jQuery 过滤方法filter()选择具有特殊属性的元素
Jun 15 Javascript
使用Chrome浏览器调试AngularJS应用的方法
Jun 18 Javascript
基于javascript实现样式清新图片轮播特效
Mar 30 Javascript
js表单验证实例讲解
Mar 31 Javascript
js中常用的Math方法总结
Jan 12 Javascript
使用vue.js在页面内组件监听scroll事件的方法
Sep 11 Javascript
JS插入排序简单理解与实现方法分析
Nov 25 Javascript
JavaScript语言对Unicode字符集的支持详解
Dec 30 #Javascript
JavaScript中的对象的extensible属性介绍
Dec 30 #Javascript
JavaScript中的对象序列化介绍
Dec 30 #Javascript
JavaScript中的数组特性介绍
Dec 30 #Javascript
JavaScript中数组成员的添加、删除介绍
Dec 30 #Javascript
JavaScript 实现打印,打印预览,打印设置
Dec 30 #Javascript
JavaScript中的数组操作介绍
Dec 30 #Javascript
You might like
php email邮箱正则
2008/10/08 PHP
php面向对象全攻略 (二) 实例化对象 使用对象成员
2009/09/30 PHP
php若干单维数组遍历方法的比较
2011/09/20 PHP
PHP rsa加密解密使用方法
2015/04/27 PHP
php中关于长度计算容易混淆的问题分析
2016/05/27 PHP
Javascript快速排序算法详解
2014/12/03 Javascript
JS实现网页标题栏显示当前时间和日期的完整代码
2015/11/02 Javascript
jquery表单验证需要做些什么
2015/11/17 Javascript
Jquery 全选反选实例代码
2015/11/19 Javascript
jquery UI Datepicker时间控件的使用及问题解决
2016/04/28 Javascript
第一次接触Bootstrap框架
2016/10/24 Javascript
JS重载实现方法分析
2016/12/16 Javascript
angular2+nodejs实现图片上传功能
2017/03/27 NodeJs
jQuery实现按比例缩放图片的方法
2017/04/29 jQuery
微信小程序的生命周期的详解
2017/10/19 Javascript
解决vue无法设置滚动位置的问题
2018/10/07 Javascript
VUE v-model表单数据双向绑定完整示例
2019/01/21 Javascript
详解关于Vuex的action传入多个参数的问题
2019/02/22 Javascript
python itchat实现微信好友头像拼接图的示例代码
2017/08/14 Python
对numpy中数组元素的统一赋值实例
2018/04/04 Python
Django如何自定义分页
2018/09/25 Python
Django Rest framework之权限的实现示例
2018/12/17 Python
对python3标准库httpclient的使用详解
2018/12/18 Python
python将控制台输出保存至文件的方法
2019/01/07 Python
Django中间件拦截未登录url实例详解
2019/09/03 Python
关于Python-faker的函数效果一览
2019/11/28 Python
Python2与Python3的区别点整理
2019/12/12 Python
使用python去除图片白色像素的实例
2019/12/12 Python
cosme官方海外旗舰店:日本最大化妆品和美容产品的综合口碑网站
2017/01/18 全球购物
IFCHIC台湾:欧美国际设计师品牌
2019/05/18 全球购物
趣天网日本站:Qoo10 JP
2019/09/18 全球购物
师范学院美术系毕业生自我鉴定
2014/01/29 职场文书
上班玩手机检讨书
2014/02/17 职场文书
公务员学习习总书记“三严三实”思想汇报
2014/09/19 职场文书
云台山导游词
2015/02/03 职场文书
道歉信怎么写
2015/05/12 职场文书