SyntaxError: a declaration in the head of a for-of loop can't have an initializer
Сообщение
SyntaxError: a declaration in the head of a for-of loop can't have an initializer (Firefox) SyntaxError: for-of loop variable declaration may not have an initializer. (Chrome)
Тип ошибки
Что случилось?
Примеры
Неправильный цикл for-of
js
let iterable = [10, 20, 30];
for (let value = 50 of iterable) {
console.log(value);
}
// SyntaxError: a declaration in the head of a for-of loop can't
// have an initializer
Правильный цикл for-of
Надо убрать инициализацию (value = 50
) в заголовке цикла for-of
. Если требуется использовать смещение 50, это можно сделать в теле цикла.
js
let iterable = [10, 20, 30];
for (let value of iterable) {
value += 50;
console.log(value);
}
// 60
// 70
// 80
Смотрите также
for...of
for...in
– В строгом режиме инициализация тоже не разрешается (SyntaxError: for-in loop head declarations may not have initializers)for
– Инициализация во время итерации разрешена.