Какой самый быстрый способ перебрать массив в JavaScript?

Опубликовано: 6 Декабря, 2021

В JavaScript доступно большое количество циклов для выполнения итераций. Следующие циклы вместе с их синтаксисом поддерживаются JavaScript.

цикл for: цикл for включает инициализацию переменной, условие для оценки переменной и выражение для определения завершения цикла. Он выполняет фиксированное количество итераций, поэтому его необходимо использовать в сценариях, где количество повторений цикла известно ранее.
В случае констант у нас есть следующий синтаксис:

 // цикл for, который выполняет 10k итераций
for (let i = 0; i <10000; i ++) {
// Заявления
}

В случае массивов:

 // Цикл, который продолжается до конца
// массива
for (i = 0; i <array.length; i ++) {
// Заявления
}

Цикл while: цикл while выполняет инициализацию снаружи, до начала цикла, затем проверяется условие, а затем оценивается выражение. Выполнение цикла while продолжается до тех пор, пока не будет выполнено условие.
В то время как цикл в случае массивов, следуйте синтаксису как:

 // инициализация
пусть x = 0;


// Проверка условий
while (x <= arr.length + 1) {
    // Приращение
х + = 1;
}

Цикл .forEach (): каждый элемент массива подчиняется функции, выполняющей некоторую операцию или задачу. Функция указывается как параметр метода forEach в JavaScript. Он выполняет высокоэффективные задачи, где требуется функциональный код. По сути, это функция обратного вызова, сильно зависящая от выполняемой внутри операции.

// Evaluation is performed element
// wise of the array 
let arr = []                      
arr.forEach((ele) => { 
    // Statements
})                              

for… of Loop: это новая версия цикла for. Этот цикл требует присвоения временного имени каждому элементу массива. Он работает очень быстро в случае небольшого набора данных. Он гораздо более читабелен по сравнению с традиционным циклом for. Он выполняет итерацию над встроенными в JavaScript объектами итерации, такими как String, Map, Set и Array.

 for (let val of arr) {
    // Заявления
}

Сравнение производительности циклов, доступных в JavaScript:

  1. В случае нескольких итераций цикла и когда размер массива слишком велик, цикл for является предпочтительным как самый быстрый метод итерации элементов.
  2. Циклы while обеспечивают эффективное масштабирование в случае больших массивов.
  3. В случае функциональных кодов каждый цикл работает лучше с гораздо оптимизированным временем.
  4. В случае меньших итераций и меньших наборов данных или операций, которые используются время от времени, forEach () выполняется с большей скоростью.
  5. Оптимизированная версия цикла for предназначена для имитации кэширования длины, т. Е. Для хранения длины массива, чтобы предотвратить его повторное вычисление.

Поэтому предпочтение отдается циклу for с альтернативой кеширования длины.