Maison >interface Web >js tutoriel >Combien de propriétés possède un objet JavaScript ?

Combien de propriétés possède un objet JavaScript ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-26 06:28:30290parcourir

How Many Properties Does a JavaScript Object Have?

Comptage des propriétés d'un objet JavaScript

En JavaScript, les objets servent de structures de données pour organiser les paires clé-valeur. La détermination du nombre de propriétés dans un objet peut être cruciale pour divers scénarios, comme parcourir les propriétés ou vérifier la présence de clés spécifiques.

Approche intégrée (ES5 et versions ultérieures)

Pour les objets créés dans des environnements ES5 ou supérieurs, une approche moderne et concise consiste à utiliser la méthode Object.keys(). Cette méthode renvoie un tableau contenant les clés de l'objet, et la longueur de ce tableau fournit le nombre de propriétés :

const obj = { name: "Gareth", age: 21 };
const propertyCount = Object.keys(obj).length;
console.log(propertyCount); // 2

Approche itérative

Avant ES5 , il n'existait aucune méthode intégrée pour compter les propriétés des objets. Cependant, vous pouvez utiliser une boucle pour parcourir manuellement l'objet et compter les clés :

const obj = { name: "Gareth", age: 21 };
let propertyCount = 0;
for (const key in obj) {
  if (obj.hasOwnProperty(key)) {
    propertyCount++;
  }
}
console.log(propertyCount); // 2

Considérations sur les propriétés symboliques (ES6)

Avec l'introduction de ES6, JavaScript a introduit des propriétés symboliques, qui sont des identifiants uniques pour les clés d'objet non accessibles via une itération de propriété régulière. Pour compter les propriétés symboliques, vous devez utiliser Object.getOwnPropertySymbols():

const obj = { [Symbol("name")]: "Gareth" };
const propKeys = Object.keys(obj);
const symKeys = Object.getOwnPropertySymbols(obj);
const propertyCount = propKeys.length + symKeys.length;
console.log(propertyCount); // 1

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn