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/continue/index.html | 144 +++++++++++++++++++++ 1 file changed, 144 insertions(+) create mode 100644 files/ja/web/javascript/reference/statements/continue/index.html (limited to 'files/ja/web/javascript/reference/statements/continue') diff --git a/files/ja/web/javascript/reference/statements/continue/index.html b/files/ja/web/javascript/reference/statements/continue/index.html new file mode 100644 index 0000000000..76bcc65b8b --- /dev/null +++ b/files/ja/web/javascript/reference/statements/continue/index.html @@ -0,0 +1,144 @@ +--- +title: continue +slug: Web/JavaScript/Reference/Statements/continue +tags: + - JavaScript + - Language feature + - Statement +translation_of: Web/JavaScript/Reference/Statements/continue +--- +
{{jsSidebar("Statements")}}
+ +

continueは、現在のループまたはラベル付きループの現在反復処理中の文の実行を終了して、次の反復処理でループの実行を続けます。

+ +
{{EmbedInteractiveExample("pages/js/statement-continue.html")}}
+ + + +

構文

+ +
continue [label];
+ +
+
label
+
その文のラベルに関連付けられた識別子。
+
+ +

解説

+ +

{{jsxref("Statements/break", "break")}} 文と対照的に、 continue はループの実行を完全には終了しません。代わりに、

+ + + + + +

continue 文には任意でラベルを含めることができ、現在のループの代わりにラベル付きループ文の次の反復処理へジャンプすることができます。この場合、continue 文は、ラベル付き文の中にある必要があります。

+ +

+ +

while における continue の使用

+ +

次の例では、 {{jsxref("Statements/while", "while")}} ループで i の値が 3 であるときに実行される continue 文を持つものを示しています。よって、 n は 1、3、7、12 の値をとります。

+ +
var i = 0;
+var n = 0;
+
+while (i < 5) {
+  i++;
+
+  if (i === 3) {
+    continue;
+  }
+
+  n += i;
+}
+
+ +

ラベル付き continue の使用

+ +

次の例では、checkiandj とラベル付けされた文が、checkj とラベル付けされた文を含んでいます。もし continue と遭遇したなら、プログラムは checkj 文の先頭から継続します。continue と遭遇するたびに、checkj の条件が false を返すまで、checkj は再度反復します。false が返されたら、checkiandj 文の残りが完遂されます。

+ +

もし continue がラベル checkiandj を持っていたなら、プログラムは checkiandj 文の先頭から継続します。

+ +

{{jsxref("Statements/label", "ラベル", "", 1)}}もご覧ください。

+ +
var i = 0;
+var j = 8;
+
+checkiandj: while (i < 4) {
+  console.log('i: ' + i);
+  i += 1;
+
+  checkj: while (j > 4) {
+    console.log('j: ' + j);
+    j -= 1;
+
+    if ((j % 2) == 0)
+      continue checkj;
+    console.log(j + ' is odd.');
+  }
+  console.log('i = ' + i);
+  console.log('j = ' + j);
+}
+
+ +

結果:

+ +
i: 0
+
+// start checkj
+j: 8
+7 is odd.
+j: 7
+j: 6
+5 is odd.
+j: 5
+// end checkj
+
+i = 1
+j = 4
+
+i: 1
+i = 2
+j = 4
+
+i: 2
+i = 3
+j = 4
+
+i: 3
+i = 4
+j = 4
+
+ +

仕様書

+ + + + + + + + + + + + +
仕様書
{{SpecName('ESDraft', '#sec-continue-statement', 'Continue statement')}}
+ +

ブラウザーの互換性

+ + + +

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

+ +

関連情報

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