Cómo iterar sobre las propiedades del objeto en JavaScript

Aquí hay una tarea muy común: iterar sobre las propiedades de un objeto, en JavaScript

Si tiene un objeto, no puede simplemente iterarlo usandomap(),forEach()o unfor..oflazo.

Obtendrá errores:

const items = {
  'first': new Date(),
  'second': 2,
  'third': 'test'
}

map()Te regalaréTypeError: items.map is not a function:

items.map(item => {})

forEach()Te regalaréTypeError: items.forEach is not a function:

items.forEach(item => {})

for..ofTe regalaréTypeError: items is not iterable:

for (const item of items) {}

Entonces, ¿qué puedes hacer para iterar?

for..ines una forma más sencilla:

for (const item in items) {
  console.log(item)
}

También puedes llamarObject.entries()para generar una matriz con todas sus propiedades enumerables y recorrerla, utilizando cualquiera de los métodos anteriores:

Object.entries(items).map(item => {
  console.log(item)
})

Object.entries(items).forEach(item => { console.log(item) })

for (const item of Object.entries(items)) { console.log(item) }


Más tutoriales de js: