JS对象遍历

话不多说此篇阐述js对象遍历的常见方法以及遍历规则

1.常见遍历方法

方法 说明 结果
for...in 常规遍历得到key值,遍历自身及继承的可枚举属性 String
Object.keys(obj); 遍历返回由key组成的数组,自身可枚举属性键名 [key1,key2,...]
Object.values(obj); 遍历返回由value组成的数组 [val1,val2,...]
Object.entries(obj); 遍历返回由[key,value]组成的数组 [[key1,val1],[key2,val2],...]
Object.getOwnPropertyNames(obj); 包含自身所有属性键名,Symbol不含 [key1,key2,...]
Object.getOwnPropertySymols(obj); 返回所有symbol属性键名 [symbol1,symbol2,...]
Reflect.ownKeys(obj); 返回所有键名,包括不可枚举,symbol等 [key,symbol,...]

具体解释可以参考阮一峰老师的文档

2.遍历规则

由于对象不像数组那样是连续的存储,因此遍历对象需要按照一定的规则来遍历

也就是说同样的对象key:val值因为顺序的不同遍历的结果可能是相同的

规则如下:

1. 遍历所有数值键,按照数值升序排列

2. 其次遍历所有字符串键,按照加入时间升序排列

3. 最后遍历所有Symbol键,按照加入时间升序排列

以上是对象常见的遍历方法即对象的遍历的规则

猜你喜欢

转载自blog.csdn.net/garrettzxd/article/details/80807747