📅  最后修改于: 2023-12-03 15:41:27.913000             🧑  作者: Mango
在编写Javascript代码时,经常需要获取对象中的项目数量。在本篇介绍中,我们将会了解到几种获取对象数量的方法。
Object.keys()方法返回一个数组,包含一个给定对象的所有可枚举属性。因此,可以使用该方法获取一个对象的属性数量。
let obj = { name: 'Tom', age: 18, gender: 'male' };
let objLength = Object.keys(obj).length;
console.log(objLength); // 输出:3
使用for-in循环可以枚举一个对象中的所有属性,然后使用计数器来计算属性的数量。
let obj = { name: 'Tom', age: 18, gender: 'male' };
let count = 0;
for(let prop in obj) {
if(obj.hasOwnProperty(prop)) {
count++;
}
}
console.log(count); // 输出:3
需要注意的是,使用for-in循环时,需要加上hasOwnProperty()方法来判断该属性是否为对象本身的属性,避免遍历到原型链上的属性。
Object.getOwnPropertyNames()方法与Object.keys()方法类似,也是返回一个包含一个对象的所有属性的数组。但是,Object.getOwnPropertyNames()方法可以返回所有属性,不仅限于可枚举属性。
let obj = { name: 'Tom', age: 18, gender: 'male' };
let objLength = Object.getOwnPropertyNames(obj).length;
console.log(objLength); // 输出:3
本篇介绍了三种获取对象数量的方法,分别为:使用Object.keys()方法、使用for-in循环和使用Object.getOwnPropertyNames()方法。在实际开发中,大家可以根据需求选择不同的方法。