【发布时间】:2021-05-27 18:45:37
【问题描述】:
了解 While 循环
我试图了解当我使用“while 循环”多次执行代码时究竟会发生什么。
我在 JSHero.net 上解决了一个问题,我发现它令人困惑,所以我尝试向自己解释解决方案以便获得清晰的理解。
请研究问题、答案和简单的解释,如果我理解正确,请告诉我。我本可以更好地解释计数器,因为在条件本身中使用它让我很困惑。
提前感谢所有帮助我的好心人!!
注意安全!!
问题
编写一个函数spaces,它接受一个自然数n并返回一个由n个空格组成的字符串。 示例:spaces(1) 应该返回 ' '。
回答
function spaces(num) {
let mySpaces = '';
while (num-- > 0)
mySpaces += ' ';
return mySpaces;
};
说明
- 声明一个函数空间
- 它有 1 个参数 'num'
- 声明一个变量 mySpaces
- 用空字符串初始化
- 我们使用 while 循环,因为我们需要多次重复一个动作
- 在这种情况下,我们需要在字符串中添加空格
- 我们的 '''空格字符串''' 将存储在变量 mySpaces 中
- 空格将等于“num”参数,该参数在调用函数“spaces”时提供
- while 循环具有:条件和代码(循环体)
- 我们的条件是保证代码只要num大于0就应该执行
- 我们的条件是 (num--> 0)
- 我们的代码是:mySpaces += ''
- 所以如果我们的函数使用以下参数调用,那么这个 while 循环将如何工作
- 空格 (3)
- 首先它会检查 3 > 0;它是什么,它将执行代码
- mySpaces = mySpaces + ' ';变量 mySpace 中的结果现在将是“”(1 个空格)
- 那么由于我们使用了 num 作为计数器 (num--),循环将从 3 = 2 减少 1
- 它会检查 2 > 0;它是什么,它将执行代码
- mySpaces = mySpaces + ' ';变量 mySpace 中的结果现在将是 ' '(2 个空格)
- 那么由于我们使用了 num 作为计数器 (num--),循环将从 2 = 1 减少 1
- 它会检查 1 > 0;它是什么,它将执行代码
- mySpaces = mySpaces + ' ';变量 mySpace 中的结果现在将是 ' '(3 个空格)
- 那么由于我们使用了 num 作为计数器 (num--),循环将从 1 = 0 减少 1
- 它会检查 0 > 0;它不是,它只会在while循环之后执行代码
- 我们返回 mySpaces 变量,这将为我们提供最终结果
【问题讨论】:
-
实际上它就像“首先它会检查是否 3 > 0;(它是)然后它将
num减一,然后它会执行代码”。
标签: javascript