Como obter o comprimento (número de propriedades) de um objeto em JavaScript?
Olá a todos! Comecei a estudar JavaScript recentemente e me deparei com uma situação confusa. Arrays têm a propriedade `.length`, que mostra o número de elementos. Mas quando tento aplicar o mesmo a um objeto, obtenho `undefined`.
Aqui está um exemplo:
```javascript
const person = {
name: 'Иван',
age: 30,
city: 'Москва'
};
console.log(person.length); // undefined
```
Tenho um objeto com três propriedades. Como posso obter o número 3? Tentei usar `Object.keys()`, mas não tenho certeza se é o caminho correto. Por favor, me digam como descobrir o "comprimento" de um objeto em JS? E por que objetos não têm uma propriedade `.length` embutida como arrays?
Agradeço desde já!
<<>>
Por que objetos não têm a propriedade length?
Em JavaScript, arrays e objetos são estruturas de dados diferentes. Arrays são ordenados e têm índices numéricos, por isso possuem a propriedade embutida length. Objetos, por outro lado, são coleções não ordenadas de pares "chave-valor", e seu "comprimento" não é algo inerentemente definido.