for…in Loops en JavaScript – Cómo usarlos

El para…en bucle en JavaScript recorre todas las propiedades de un objeto. Este artículo explicará por qué y cómo usarlo.

Objetos JavaScript

Los objetos de JavaScript son un tipo de variable que almacena las propiedades para un elemento que está representando en su código. Por ejemplo, puede tener un coche objeto, de los cuales la marca, el año, el modelo y el color de un automóvil son sus propiedades . Cada objeto de automóvil tendría su propia lista separada de propiedades que definen ese automóvil.

Los objetos de JavaScript también se pueden usar como tablas hash y brindan una funcionalidad similar.

¿Por qué hacer un bucle sobre las propiedades de los objetos?

Poder recorrer las propiedades almacenadas en un objeto es útil; es posible que simplemente desee inspeccionar el contenido de un objeto o que desee actualizar ciertos valores en el objeto. Por ejemplo, es posible que desee tomar todas las propiedades de un objeto y unirlas en una sola cadena para que el objeto pueda representarse solo como texto.

para…en Sintaxis de JavaScript en bucle

El para... en declaración tiene la siguiente sintaxis:

for (VARIABLE in OBJECT) {
    STATEMENTS
}

Tenga en cuenta que:

  • OBJETO es el objeto del cual las propiedades se repetirá
  • VARIABLE es el nombre de la variable que se utilizará para acceder a cada propiedad de OBJETO a medida que se iteran sobre
    • Este valor será el nombre de la propiedad – no el valor!
  • DECLARACIONES son las declaraciones que se ejecutarán para cada iteración (o ciclo)

para…en Ejemplos de código

var myCar = {
    make: 'Ford',
    model: 'Pinto',
    colour: 'Red',
    year: '1982'
}

var carString = '';

for (prop in myCar){
    carString += prop + ': ' + myCar[prop] + ',';
}

console.log(carString);

Arriba, la variable myCar se define que contiene un objeto con alguna información sobre un coche. A continuación, se define una variable de cadena vacía carString que tendrá información sobre el coche añadido.

El para…en el bucle itera sobre cada propiedad en myCar objeto. accesorio es el nombre dado a la variable que contendrá el nombre de cada propiedad de myCar mientras se repite.

En cada iteración, carString se adjunta al uso de += operador. El valor adjunto es el nombre de la propiedad, seguido del valor de la propiedad a la que se accede mediante myCar[prop] – recuerda, prop siempre es una cadena que contiene el nombre de la propiedad que se está reproduciendo actualmente.