Иногда нам нужно перебрать объект ассоциативного массива JavaScript в нашем коде JavaScript.

В этой статье мы рассмотрим, как выполнить цикл по объекту ассоциативного массива JavaScript.

Используйте цикл for-in

Один из способов перебрать объект ассоциативного массива JavaScript с помощью цикла for-in.

Например, мы можем написать:

const obj = {
  a: 1,
  b: 2,
  c: 3
}
for (const key in obj) {
  const value = obj[key];
  console.log(key, value);
}

Мы создаем объект obj с несколькими парами ключ-значение.

Затем мы перебираем ключи объекта с помощью цикла for-in.

Мы получаем значение свойства с obj[key] в теле цикла.

Поэтому из лога консоли получаем:

a 1
b 2
c 3

Используйте Object.entries с методом forEach

Мы можем использовать метод Object.entries для возврата массива массивов пар ключ-значение.

Затем мы можем использовать метод forEach для перебора массива.

Например, мы можем написать:

const obj = {
  a: 1,
  b: 2,
  c: 3
}
Object.entries(obj).forEach(([key, value]) => console.log(key, value));

Вызываем forEach с обратным вызовом с массивом с деструктурированными из него key и value.

Затем в теле обратного вызова мы регистрируем key и value.

Таким образом, мы получаем тот же результат, что и раньше.

Используйте цикл for-of

Другой способ перебрать пары ключ-значение — использовать цикл for-of.

Например, мы можем написать:

const obj = {
  a: 1,
  b: 2,
  c: 3
}
for (const [key, value] of Object.entries(obj)) {
  console.log(key, value)
}

Мы используем Object.entries для возврата массива массивов пар ключ-значение.

И мы деструктурируем ключ и значение из деструктурированных массивов ключ-значение.

И мы регистрируем key и value из журнала консоли.

Заключение

Есть несколько способов, которыми мы можем воспользоваться для перебора пары ключ-значение объекта ассоциативного массива с помощью JavaScript.

Дополнительные материалы на PlainEnglish.io. Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter и LinkedIn. Посетите наш Community Discord и присоединитесь к нашему Коллективу талантов.