En este ejemplo, aprenderá a escribir un programa JavaScript que recorrerá un objeto.
Para comprender este ejemplo, debe tener el conocimiento de los siguientes temas de programación de JavaScript:
- Objetos JavaScript
- JavaScript para… en bucle
Ejemplo 1: Objeto en bucle utilizando para … en
// program to loop through an object using for… in loop const student = ( name: 'John', age: 20, hobbies: ('reading', 'games', 'coding'), ); // using for… in for (let key in student) ( let value; // get the value value = student(key); console.log(key + " - " + value); )
Salida
nombre - John edad - 20 pasatiempos - ("lectura", "juegos", "codificación")
En el ejemplo anterior, el for… in
bucle se usa para recorrer el student
objeto.
Se accede al valor de cada clave mediante student(key)
.
Nota : El for… in
ciclo también contará las propiedades heredadas.
Por ejemplo,
const student = ( name: 'John', age: 20, hobbies: ('reading', 'games', 'coding'), ); const person = ( gender: 'male' ) // inheriting property student.__proto__ = person; for (let key in student) ( let value; // get the value value = student(key); console.log(key + " - " + value); )
Salida
nombre - John edad - 20 pasatiempos - ("lectura", "juegos", "codificación") género - masculino
Si lo desea, solo puede recorrer la propiedad del objeto mediante el hasOwnProperty()
método.
if (student.hasOwnProperty(key)) ( ++count: )
Ejemplo 2: Recorrer el objeto usando Object.entries y para… de
// program to loop through an object using for… in loop const student = ( name: 'John', age: 20, hobbies: ('reading', 'games', 'coding'), ); // using Object.entries // using for… of loop for (let (key, value) of Object.entries(student)) ( console.log(key + " - " + value); )
Salida
nombre - John edad - 20 pasatiempos - ("lectura", "juegos", "codificación")
En el programa anterior, el objeto se enlaza usando el Object.entries()
método y el for… of
ciclo.
El Object.entries()
método devuelve una matriz de pares clave / valor de un objeto dado. El for… of
bucle se utiliza para recorrer una matriz.