JavaScript

for~in 文

 編集:2022.08.23 by T.A.

オブジェクト内のプロパティとメソッドを変数に代入しながら順番に処理をする。

for (変数 in [オブジェクト]) {
 処理
}
変数 各要素を格納する変数。
オブジェクト オブジェクト、配列。

mdn: キーが文字列であるオブジェクトの列挙可能プロパティすべてに対して、継承された列挙可能プロパティも含めて反復処理を行います(Symbol がキーになったものは無視します)。

コレクションは、配列などのように直接アクセスする手段を持たないため、for~in ではアクセスできません。コレクションのメンバーを引き出すためには、Enumerator オブジェクトを使用します。

¶「{ }」を省く事が可能。この場合、処理は区切りの「;」までが実行される。

Obj={0:10, 1:20, 3:"あ", Prop1:100, Prop2:["か", "き"], Prop3:{P1:10, P2:20}};
for(prop in Obj){
  alert(prop + ":" + Obj[prop]);
}	//表示:
	// 0:10
	// 1:20
	// 3:あ
	// Prop1:100
	// Prop2:か,き
	// Prop3:[object Object]
Obj=[10, 20, "あ", [100, 200], {P1:10, P2:20}]
for(prop in Obj){
  alert(prop + ":" + Obj[prop]);
}	//表示:
	// 0:10
	// 1:20
	// 2:あ
	// 3:100,200
	// 4:[object Object]

テスト