JavaScriptのFor In

For In ループ

JavaScript for in 文はオブジェクトの属性をループで遍历します:

文法

for (key in object) {
  // 実行されるコードブロック
}

インスタンス

const person = {fname:"Bill", lname:"Gates", age:25};
let text = "";
for (let x in person) {
  text += person[x];
}

自分で試してみる

例を説明します

  • for in ループで遍历 person オブジェクト
  • 各イテレーションで返されますキー (x)
  • キーはキーの
  • キーの値は person[x]

For In 配列の遍历

JavaScript for in 文も配列の属性を遍历することができます:

文法

for (変数 in 配列) {
  コード
}

インスタンス

const numbers = [45, 4, 9, 16, 25];
let txt = "";
for (let x in numbers) {
  txt += numbers[x];
}

自分で試してみる

もしインデックス順序非常に重要ですが、配列上で使用しないでください for in

インデックス順序は実装に依存しており、期待する順序で配列値にアクセスする可能性がありません。

順序が重要な場合、以下を使用するのが最適です for ループ、for of ループまたは Array.forEach()

Array.forEach()

forEach() 関数は各配列要素に対して一度だけ呼び出されます(コールバック関数)。

インスタンス

const numbers = [45, 4, 9, 16, 25];
let txt = "";
numbers.forEach(myFunction);
function myFunction(value, index, array) {
  txt += value;
}

自分で試してみる

ご注意ください、この関数は 3 つのパラメータを使用します:

  • アイテム値
  • アイテムインデックス
  • 配列自体

上記の例では value パラメータのみを使用しています。以下のように書き換えられます:

インスタンス

const numbers = [45, 4, 9, 16, 25];
let txt = "";
numbers.forEach(myFunction);
function myFunction(value) {
  txt += value;
}

自分で試してみる