遍历对象的方法

遍历对象相当于遍历对象的属性,所以需要明白这些属性自身的特点;

一,对象的属性分类:

  • 原型属性
  • 对象自身可枚举属性
  • 对象自身不可枚举属性
  • Symbol属性

设置相应属性

 

二,遍历对象的方法

判断是否可枚举:Object.prototype.property IsEnumeralbe()

1,for in

以任意顺序迭代一个对象的除Symbol以外的可枚举属性,包括继承的可枚举属性。

如下图所示,只能遍历打印出 原型属性自身可枚举属性,返回字符串

2,object.keys()

:返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和正常循环遍历该对象时返回的顺序一致 。

如下图所示,只能遍历自身可枚举属性,返回一个属性名数组

3,Object.getOwnPropertyNames()

:返回一个由指定对象的所有自身属性的属性名(包括不可枚举属性但不包括Symbol值作为名称的属性)组成的数组。

如下图所示,只能遍历自身属性(不论是否可枚举),返回一个属性名数组;

4,Object.getOwnPropertySymbols()

:返回一个给定对象自身的所有 Symbol 属性的数组

如下图所示,只打印 Symbol属性,返回一个属性名数组;

5,Reflect.ownKeys()

返回一个由目标对象本人的所有属性组成的对象的静态方法 。

如下图所示,打印 自身的所有属性(没有原型属性),返回一个属性名数组;

 

 

 

 

posted @ 2022-05-09 11:47  AVEGER  阅读(494)  评论(0)    收藏  举报