JavaScript中遍历对象的property的3种方法介绍
作者:bea
在JavaScript中,可以用三种方法来遍历对象的property: 1.for/in。可以使用for/in语句遍历对象自身的property(Own Property)及其从原型对象处继承的property,只有enumerable的property才会被遍历到。 2.Object.keys()。可以将对象作为参数传入Object.keys(),Object.keys()语句将返回由所有property名称字符串所组成的数组。Object.keys()语句仅返回对象自
在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标准中有效。
综合上述信息,总结成图如下:
实验:
代码如下:
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"]
有用 | 无用
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标准中有效。
综合上述信息,总结成图如下:
实验:
代码如下:
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设计模式之中介者模式Mediator
- javascript实现window.print()去除页眉页脚
- Javascript访问器属性实例分析
- Javascript中数组sort和reverse用法分析
- jQuery中:visible选择器用法实例
- JQuery设置时间段下拉选择实例
- jQuery中:hidden选择器用法实例
- jQuery中:has选择器用法实例
- jQuery中:empty选择器用法实例
- jQuery中:contains选择器用法实例
- 解决ueditor jquery javascript 取值问题
- jQuery中:focus选择器用法实例
- JavaScript中的原型链prototype介绍
- jQuery中:not选择器用法实例
- JavaScript中使用Object.create()创建对象介绍
- JavaScript中对象property的读取和写入方法介绍
- jQuery中:last选择器用法实例
- JavaScript中对象property的删除方法介绍
- JavaScript中检查对象property的存在性方法介绍