Lista de propiedades de objetos en JavaScript

Shraddha Paghdar 12 octubre 2023
  1. Enumerar las propiedades de un objeto utilizando el bucle for...in en JavaScript
  2. Enumerar las propiedades de un objeto usando la función Object.keys() en JavaScript
  3. Enumere las propiedades de un objeto con Object.getOwnPropertyNames() en JavaScript
Lista de propiedades de objetos en JavaScript

JavaScript proporciona varios métodos para trabajar con objetos como Object.values() y Object.prototype.valueOf() para trabajar con valores de objetos, Object.keys() y Object.prototype.hasOwnProperty() para trabajar con claves de objeto.

El usuario puede realizar cualquier acción en las claves y propiedades de los objetos. Este tutorial explica cómo enumerar las propiedades de los objetos utilizando el bucle for...in, Object.getOwnPropertyNames(), y la función Object.keys() en JavaScript.

Enumerar las propiedades de un objeto utilizando el bucle for...in en JavaScript

Para enumerar las propiedades de un objeto, puede usar el bucle for...in en JavaScript. El bucle for...in itera sobre las propiedades enumerables de un objeto.

Estas son propiedades de un objeto cuya bandera enumerable se establece en verdadero. Esto incluye propiedades enumerables heredadas. Sin embargo, este bucle ignora las propiedades no enumerables cuyo indicador enumerable está establecido en falso.

Por ejemplo, vamos a crear un objeto con tres propiedades y listarlo usando el bucle for...in. Vea el código a continuación.

Sintaxis:

for (variable in object) {
  statement
}

Esta función itera el objeto, y a la variable se le asigna un nombre de propiedad diferente con cada iteración. Este método solo extrae propiedades enumerables de un objeto.

Para obtener más información, lea más sobre el método for...in.

const inputObject = {
  id: 42,
  name: 'John Doe',
  address: {city: 'Mumbai', country: 'India'}
};
for (const property in inputObject) {
  console.log(property);
}

En el bloque de código de ejemplo anterior, hemos definido tres propiedades de un objeto id, name y address. Cuando itera el inputObject, se verifican todas las propiedades en el inputObject.

El resultado del bloque de código anterior se verá como el que se muestra a continuación.

Producción :

id
name
address

Enumerar las propiedades de un objeto usando la función Object.keys() en JavaScript

Este es un método integrado proporcionado por JavaScript que se utiliza para extraer las propiedades o claves de un objeto. Itera el objeto y devuelve un array de propiedades enumerables.

Las propiedades no enumerables son propiedades de objetos que no aparecen en el bucle cuando el objeto respectivo se pasa con Object.keys() o for ...in en el bucle.

Sintaxis:

Object.keys(object);

Esta función toma un objeto como entrada, y es un parámetro obligatorio. Este método solo extrae propiedades enumerables de un Objeto.

Para obtener más información, lea más sobre el método keys.

const inputObject = {
  id: 42,
  name: 'John Doe',
  address: {city: 'Mumbai', country: 'India'}
};

Object.defineProperty(
    inputObject, 'salary', {value: '30,000$', enumerable: false})

console.log(Object.keys(inputObject));

En el ejemplo anterior, definimos tres propiedades de un objeto ID, name y address. Cuando pasa inputObject, se comprueban todas las propiedades del inputObject.

El resultado del bloque de código anterior se verá como el que se muestra a continuación.

Producción :

["id", "name", "address"]

Enumere las propiedades de un objeto con Object.getOwnPropertyNames() en JavaScript

Este es un método integrado proporcionado por JavaScript que se utiliza para extraer las propiedades o claves de un objeto. Itera el objeto y devuelve un array de propiedades, incluidas las propiedades no enumerables.

Sintaxis:

Object.getOwnPropertyNames(object);

Esta función toma un parámetro obligatorio objeto como entrada. Este método solo extrae las propiedades enumerables y no enumerables de un Objeto y no los valores.

Para obtener más información, lea más sobre el método getOwnPropertyNames.

La principal diferencia entre getOwnPropertyNames() y Object.keys() es que getOwnPropertyName() devuelve tanto las propiedades enumerables como las no enumerables. Mientras que Object.keys() solo devuelve claves enumerables.

Las propiedades no enumerables se pueden crear utilizando Object.defineProperty. Un indicador enumerable se establece en true cuando el inicializador de propiedades inicializa las propiedades.

Puede utilizar el método propertyIsEnumerable() para comprobar si un objeto contiene propiedades enumerables o no enumerables.

const inputObject = {
  id: 42,
  name: 'John Doe',
  address: {city: 'Mumbai', country: 'India'}
};

Object.defineProperty(
    inputObject, 'salary', {value: '30,000$', enumerable: false})

console.log(Object.getOwnPropertyNames(inputObject));

En el ejemplo anterior, definimos tres propiedades de un objeto ID, name y address. Cuando pasa inputObject, se comprueban todas las propiedades y propiedades no enumerables del inputObject.

El resultado del bloque de código anterior se verá como el que se muestra a continuación.

Producción :

["id", "name", "address", "salary"]
Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn

Artículo relacionado - JavaScript Object