#code_pattern
Проводя интервью, я практикую live coding, то есть решение простых задач со скриншарингом экрана. Так сразу видно пишет ли кандидат код на современном JavaScript.
Итерировать массив можно 4-мя способами:
1️⃣ for
for (let i = 0; i < arr.length; ++i) { console.log(arr[i]);}2️⃣ forEach
arr.forEach((v, i) => console.log(v));3️⃣ for in
for (let i in arr) { console.log(arr[i]);}4️⃣ for of
for (const v of arr) { console.log(v);}Упрощенный анализ показывают, что 1️⃣и 3️⃣ создают ненужную переменную, а 2️⃣– контекст ненужной функции. Поэтому при написание кода старайтесь использовать 4️⃣ for of.
Бенчмарки и глубокий анализ можно провести самостоятельно или нагуглить. Вместо этого я порекомендую добавить к себе в проект eslint правило disallow forEach. Это же можно сделать с помощью no-restricted-syntax и селектора
CallExpression[callee.property.name="forEach"]