From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- .../reference/statements/for_each...in/index.html | 81 ++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 files/ja/web/javascript/reference/statements/for_each...in/index.html (limited to 'files/ja/web/javascript/reference/statements/for_each...in/index.html') diff --git a/files/ja/web/javascript/reference/statements/for_each...in/index.html b/files/ja/web/javascript/reference/statements/for_each...in/index.html new file mode 100644 index 0000000000..72df003bfb --- /dev/null +++ b/files/ja/web/javascript/reference/statements/for_each...in/index.html @@ -0,0 +1,81 @@ +--- +title: for each...in +slug: Web/JavaScript/Reference/Statements/for_each...in +tags: + - Deprecated + - E4X + - JavaScript + - Obsolete + - Statement +translation_of: Archive/Web/JavaScript/for_each...in +--- +
{{jsSidebar("Statements")}}
+ +
+

for each...in 文は ECMA-357 (E4X) の一部として廃止されました。E4X のサポートは削除されました。代替として、for...of 文が推奨されます。
+
+ Firefox は for each...in の使用に対して警告を表示します。また、Firefox 57 以降では動作しません。
+ 移行のためのヘルプとして Warning: JavaScript 1.6's for-each-in loops are deprecated をご覧ください。

+
+ +

for each...inは指定された変数を、オブジェクトの全プロパティの値に対して反復します。異なるそれぞれのプロパティに対し、指定された文が実行されます。

+ +

構文

+ +
for each (variable in object) {
+  statement
+}
+ +
+
variable
+
任意で var キーワードを用いて宣言された、プロパティの値に対して反復する変数。この変数はループにではなく、関数にローカルです。
+
+ +
+
object
+
プロパティが反復されるオブジェクト。
+
+ +
+
statement
+
各プロパティに対して実行する文。ループ内で複数の文を実行するには、それらの文をグループ化するために ブロック 文 ({ ... }) を使ってください。
+
+ +

説明

+ +

ある組み込みプロパティに対しては反復されません。これらには、たとえば StringindexOf メソッドといった、オブジェクトのすべての組み込みメソッドが含まれます。しかしながら、すべてのユーザー定義プロパパティに対しては反復されます。

+ +

+ +

例: for each...in を使う

+ +

警告: このようなループを決して配列に使わないでください。オブジェクトにだけ使ってください。詳しくは for...in をご覧ください。

+ +

次のスニペットはオブジェクトのプロパティに対して反復し、それらの合計を計算します:

+ +
var sum = 0;
+var obj = {prop1: 5, prop2: 13, prop3: 8};
+
+for each (var item in obj) {
+  sum += item;
+}
+
+console.log(sum); // logs "26", which is 5+13+8
+ +

仕様

+ +

現行の ECMA-262 仕様には含まれていません。JavaScript 1.6 で実装され、非推奨になりました。

+ +

ブラウザー実装状況

+ + + +

{{Compat("javascript.statements.for_each_in")}}

+ +

参照

+ + -- cgit v1.2.3-54-g00ecf