Coffeescript-loops

提供:Dev Guides
移動先:案内検索

CoffeeScript-ループ

コーディング中に、コードのブロックを繰り返し実行する必要がある場合があります。 このような状況では、ループステートメントを使用できます。

一般に、ステートメントは順番に実行されます。関数の最初のステートメントが最初に実行され、次に2番目のステートメントが実行されます。

ループステートメントを使用すると、ステートメントまたはステートメントのグループを複数回実行できます。 以下に示すのは、ほとんどのプログラミング言語での一般的なループ文の形式です

ループアーキテクチャ

JavaScriptは、 while、for 、および for..in ループを提供します。 CoffeeScriptのループはJavaScriptのループに似ています。

*while* ループとそのバリアントは、CoffeeScriptの唯一のループ構造です。 一般的に使用される *for* ループの代わりに、CoffeeScriptは *Comprehensions* を提供します。これについては後の章で詳しく説明します。

CoffeeScriptのwhileループ

*while* ループは、CoffeeScriptが提供する唯一の低レベルのループです。 ブール式とステートメントのブロックが含まれています。 *while* ループは、指定されたブール式が真である限り、指定されたステートメントブロックを繰り返し実行します。 式が偽になると、ループは終了します。

構文

以下は、CoffeeScriptの while ループの構文です。 ここでは、括弧を使用してブール式を指定する必要はなく、ループの本体を中括弧で囲む代わりに(一貫した数の)空白を使用してインデントする必要があります。

while expression
   statements to be executed

次の例は、CoffeeScriptでの while ループの使用法を示しています。 このコードを while_loop_example.coffee という名前のファイルに保存します

console.log "Starting Loop "
count = 0
while count < 10
   console.log "Current Count : " + count
   count++;

console.log "Set the variable to different value and then try"
  • コマンドプロンプト*を開き、以下に示すように.coffeeファイルをコンパイルします。
c:\> coffee -c while_loop_example.coffee

コンパイル時に、次のJavaScriptが提供されます。

//Generated by CoffeeScript 1.10.0
(function() {
  var count;

  console.log("Starting Loop ");

  count = 0;

  while (count < 10) {
    console.log("Current Count : " + count);
    count++;
  }

  console.log("Set the variable to different value and then try");

}).call(this);

次に、*コマンドプロンプト*を再度開き、以下に示すようにCoffeeScriptファイルを実行します。

c:\> coffee while_loop_example.coffee

CoffeeScriptファイルを実行すると、次の出力が生成されます。

Starting Loop
Current Count : 0
Current Count : 1
Current Count : 2
Current Count : 3
Current Count : 4
Current Count : 5
Current Count : 6
Current Count : 7
Current Count : 8
Current Count : 9
Set the variable to different value and then try

whileのバリアント

CoffeeScriptのWhileループには、* untilバリアント*と* loopバリアント*の2つのバリアントがあります。

S.No. Loop Type & Description
1

until variant of while

  • while* ループの *until* バリアントには、ブール式とコードブロックが含まれています。 このループのコードブロックは、指定されたブール式が偽である限り実行されます。
2

loop variant of while

  • loop* バリアントは、true値*(while true)*の *while* ループと同等です。 このループ内のステートメントは、 *Break* ステートメントを使用してループを終了するまで繰り返し実行されます。