for…in文

(文と宣言)
https://www.javadrive.jp/javascript/for/index8.html

for (変数名 in オブジェクト){
  実行する文1;
  実行する文2;
  ...
}

オブジェクトに含まれるプロパティ名を順に取得することができる。
繰り返し処理が行われる度に変数にはオブジェクトのプロパティ名(キー)が代入される。値ではないので注意。
また、JavaScriptでの『for…in文』は処理の順番が担保されない(プロパティが代入されていく順番に対しての規定がない)ため、順番通りに処理したい場合は『for文』を使用する。

その他の注意点

  • 列挙できないプロパティがある(Array.lengthなど)
  • プロトタイプ継承したプロパティも列挙する
const object = { a: 1, b: 2, c: 3 };

for (const property in object) {
  console.log(`${property}: ${object[property]}`);
}
// Expected output:
// "a: 1"
// "b: 2"
// "c: 3"
inserted by FC2 system