Ітерація по масиву

Для ітерації по масиву (перебір елементів) часто використовуються різні види циклів (наприклад, for, while, for...of)

Цикл for для ітерації по масиву

Цикл for - один з найпоширеніших способів ітерації по масиву.

const myArray = ["Red", "Green", "Blue", "Magenta"];

for (let i = 0; i < myArray.length; i += 1) {
    console.log(myArray[i]);
}

Для доступу до елементів використовують синтаксис квадратних дужок array[index], де index - це значення лічильника циклу від 0 і до останнього індексу масиву, тобто менше, але не дорівнює його довжині.

Цикл for...of

Цикл for...of використовують для ітерації через значення масиву, рядка або будь-якого іншого ітерованого об'єкта, що має символи. Цей цикл дозволяє зручно працювати з кожним елементом без необхідності вказувати індекси або використовувати інші способи ітерації.

for (const variable of iterable) {
  // loop body
}

variable - змінна, яка буде зберігати значення елемента на кожній ітерації.

iterable - колекція, яка містить ітерабельні елементи, наприклад масив.

let myArray = [10, 20, 30];

for (const element of myArray) {
    console.log(element);
}

Цей код перейде через кожен елемент масиву myArray, призначаючи значення кожного елемента змінній element, і виведе ці значення у консоль.

Цей цикл також може бути використаний для рядків:

let myString = "JavaScript";

for (const symbol of myString) {
    console.log(symbol);
}

Цей код пройде через кожен символ у рядку "JavaScript" та виведе кожен символ у консоль.

Оператори break і continue

Оператори break і continue можна використовувати при переборі масивів для управління ходом виконання циклу.

Оператор break: Цей оператор призначений для негайного припинення виконання циклу, коли досягнута певна умова.

Наприклад перевіримо масив на наявність серед його елементів якогось значення.

const myArray = ["Red", "Green", "Blue", "Magenta"];
const toFind = "Blue";
let message;

for (let element of myArray) {
  if (element === toFind) {
    message = "Element is exist";
    break; // Припиняє виконання циклу, коли знайдено збіг
  }
  message = "Element isт't exist";
}

console.log(message);

У цьому випадку ми кожен раз поки не знайдемо збіг перезаписуємо змінну повідомлення. Краще тоді дефолтне значення задати одразу під час визначення змінної. І змінити її тільки коли знайдемо збіг.

const myArray = ["Red", "Green", "Blue", "Magenta"];
const toFind = "Blue";
let message = "Element isт't exist";

for (let element of myArray) {
  if (element === toFind) {
    message = "Element is exist";
    break; // Припиняє виконання циклу, коли знайдено збіг
  }
}

console.log(message);

Оператор continue: Цей оператор пропускає поточну ітерацію циклу і переходить до наступної ітерації без виконання коду, який знаходиться після continue.

Приклад використання continue при переборі масиву. Виведе тільки непрані числа з масиву:

const myArray = [1, 2, 3, 4, 5];

for (let number of myArray) {
  if (number % 2 === 0) {
    continue; // Пропускає парні числа
  }
  console.log(number);
}

Last updated