JavaScript 对象遍历与长度计算

2019-08-12  本文已影响0人  愤的小鸟怒

(一) js 的对象的遍历方法
(1) 使用 Object.keys() 方法获取对象的键组成的列表,计算长度只需要该数组的 length 属性即可。

const type = {
  SCALAR: 1,
  VEC2: 2,
  VEC3: 3,
  VEC4: 4,
  MAT2: 4,
  MAT3: 9,
  MAT4: 16,
};

// 打印 type 对象的每一个值。
Object.keys(type).forEach((key) => {
    console.log(key, type[key]);
})

const length = Object.keys(type).length;
console.log(length) // 7

(2) 使用Object.getOwnPropertyNames(obj)遍历,返回一个数组,包含对象自身的所有属性(不含Symbol属性,但是包括不可枚举属性).

var obj = {'0':'a','1':'b','2':'c'};

Object.getOwnPropertyNames(obj).forEach(function(key){
    console.log(key,obj[key]);
});

(3) 使用 for ... in ...遍历: 循环遍历对象自身的和继承的可枚举属性(不含Symbol属性).

var obj = {'0':'a','1':'b','2':'c'};

for(var i in obj) {
     console.log(i,":",obj[i]);
}

(4) 使用Reflect.ownKeys(obj)遍历,返回一个数组,包含对象自身的所有属性,不管属性名是Symbol或字符串,也不管是否可枚举。

var obj = {'0':'a','1':'b','2':'c'};

Reflect.ownKeys(obj).forEach(function(key){
console.log(key,obj[key]);
});
上一篇下一篇

猜你喜欢

热点阅读