Avatar ·

Comment obtenir la longueur (nombre de propriétés) d'un objet en JavaScript ?

Bonjour à tous ! Je viens de commencer à apprendre JavaScript et j'ai rencontré un problème. Les tableaux ont une propriété `length` qui indique le nombre d'éléments. Mais quand j'essaie de faire la même chose avec un objet, j'obtiens `undefined`. Voici un exemple : ```javascript let user = { name: 'Иван', age: 30, city: 'Москва' }; console.log(user.length); // undefined ``` Je m'attendais à voir `3`, car l'objet a trois propriétés. Mais à la place, j'obtiens `undefined`. Pourquoi ? Et comment compter correctement le nombre de propriétés dans un objet ? Je sais que les objets ne sont pas des tableaux, mais j'ai besoin de vérifier dynamiquement combien de champs un objet contient, par exemple après avoir ajouté ou supprimé des propriétés. Parcourir manuellement chaque propriété n'est pas pratique, surtout si l'objet est volumineux. Dites-moi, s'il vous plaît, existe-t-il un moyen intégré d'obtenir la longueur d'un objet ? Ou dois-je utiliser une solution de contournement ? Merci d'avance ! <<>>

Pourquoi les objets n'ont-ils pas de propriété length ?

En JavaScript, les tableaux sont un type spécial d'objet avec un comportement spécifique pour la propriété `length`. Les objets ordinaires n'ont pas cette propriété car ils ne sont pas conçus pour être des collections indexées. Pour compter les propriétés d'un objet, vous pouvez utiliser `Object.keys()`, `Object.values()` ou `Object.entries()` qui retournent des tableaux, puis accéder à leur propriété `length`.