MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

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-of ループでは許可されていません。初期化できる for ループを使用した方が良いかもしれません。

不正な for-of ループ

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 ループ

for-of ループのヘッダーから初期化子 (value = 50) を取り除く必要があります。おそらく、50 をオフセット値にしようとしているのでしょうから、たとえばループのボディー内で 50 を加えられます。

let iterable = [10, 20, 30];

for (let value of iterable) {
  value += 50;
  console.log(value);
}
// 60
// 70
// 80

関連項目

ドキュメントのタグと貢献者

 このページの貢献者: YuichiNukiyama
 最終更新者: YuichiNukiyama,