JavaScript中的函数和循环

Function and Loop in JavaScript

本文关键字:循环 函数 JavaScript      更新时间:2024-02-02

我正在用JavaScript练习函数和循环。

var i;
var result = '';
function candy(x) {
  for (i = 0; i <= 2; i++) {
    console.log(x + " candy. Take 1, " + (x - 1) + " candy.");
  }
  return result += i;
}
candy(4);

输出:

"4 candy,  Take 1 down, 3 candy"
"4 candy,  Take 1 down, 3 candy"
"4 candy,  Take 1 down, 3 candy"
"3"

我的预期输出:

"4 candy,  Take 1 down, 3 candy"
"3 candy,  Take 1 down, 2 candy"
"2 candy,  Take 1 down, 1 candy"

我是不是在循环中遗漏了什么?有什么建议吗?非常感谢。

在您使用(x-1)的循环中,需要将其更改为(x-i)。原因是x被初始化为4。每次循环运行时,它都会输出4-1。如果使用(x-i),则每次都会递减。。。尝试以下代码:

var i;
var result = '';
function candy(x) {
  for (i = 0; i <= 2; i++) {
    console.log(x + " candy. Take 1, " + (x - i) + " candy.");
  }
  return result += i;
}
candy(4);

如果您打算移除糖果,请使用x-;在你的循环中。

var i;
var result = '';
function candy(x) {
  for (i = 0; i <= 2; i++) {
    console.log(x + " candy. Take 1, " + (--x) + " candy.");
  }
  return result += i;
}
candy(4);