CoffeeScript - 循环



在编写代码时,您可能会遇到需要反复执行代码块的情况。在这种情况下,您可以使用循环语句。

通常,语句按顺序执行:函数中的第一个语句首先执行,然后是第二个语句,依此类推。

循环语句允许我们多次执行一个语句或一组语句。下面是大多数编程语言中循环语句的一般形式

Loop Architecture

JavaScript 提供了 **while**、**for** 和 **for..in** 循环。CoffeeScript 中的循环类似于 JavaScript 中的循环。

**while** 循环及其变体是 CoffeeScript 中唯一的循环结构。CoffeeScript 没有使用常见的 **for** 循环,而是提供了 **推导式**,将在后面的章节中详细讨论。

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 变体**。

序号 循环类型和描述
1 while 的 until 变体

**while** 循环的 **until** 变体包含一个布尔表达式和一个代码块。只要给定的布尔表达式为假,就会执行此循环的代码块。

2 while 的 loop 变体

**loop** 变体等效于具有真值 **(while true)** 的 **while** 循环。此循环中的语句将重复执行,直到我们使用 **Break** 语句退出循环。

广告