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)
Тип оÑибки
SyntaxError
ЧÑо ÑлÑÑилоÑÑ?
Рзаголовке Ñикла for...of иниÑиализиÑÑеÑÑÑ Ð¿ÐµÑеменнаÑ. ÐнÑми Ñловами, пеÑÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð¾Ð±ÑÑвлÑеÑÑÑ Ð¸ полÑÑÐ°ÐµÑ Ð·Ð½Ð°Ñение|for (var i = 0 of iterable)|. РподобнÑÑ
ÑиклаÑ
ÑÑо не допÑÑкаеÑÑÑ. ÐниÑиализиÑоваÑÑ Ð¿ÐµÑеменнÑе можно в ÑиклаÑ
for.
ÐÑимеÑÑ
>ÐепÑавилÑнÑй Ñикл 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...offor...inâ Ð ÑÑÑогом Ñежиме иниÑиализаÑÐ¸Ñ Ñоже не ÑазÑеÑаеÑÑÑ (SyntaxError: for-in loop head declarations may not have initializers)forâ ÐниÑиализаÑÐ¸Ñ Ð²Ð¾ вÑÐµÐ¼Ñ Ð¸ÑеÑаÑии ÑазÑеÑена.