【发布时间】:2015-04-15 10:36:03
【问题描述】:
我创建了一个函数,可以打印 1-24 之间的所有数字。如果数字可被 3 整除,则打印 Fizz,如果可被 5 整除,则打印 Buzz。
如果开始 > 停止,我想添加一条错误消息。我怎样才能做到这一点?我尝试了警报,但根本没有成功。
2) 当我使用 start=2 和 stop=24 打印函数时,显示的第一个值是“未定义”。这是为什么?
通过使用 .substr(1) 我想删除左边的第一个逗号。
function fizzBuzz(start, stop) {
if (start >= stop)
var returnString;
for(var i= start; i <= stop; i++) {
returnString += ",";
if (i % 3 === 0 && i % 5 === 0)
returnString += "FizzBuzz";
else if (i % 3 === 0)
returnString += "Fizz";
else if (i % 5 === 0)
returnString += "Buzz";
else
returnString += i;
}
return returnString;
}
var result = fizzBuzz(2, 24).substr(1);
提前致谢!
【问题讨论】:
-
if (start >= stop)表示 start 必须是 > 或 = 才能停止,而您是说start = 2和stop = 24,所以 start -
您可以通过将
returnString初始化为空字符串,然后使用if (returnString.length>0) returnString += ",";来避免使用前导逗号 -
有几种方法可以避免前导逗号。除非在该函数的其他用途中需要前导逗号,否则最糟糕的方法是修改函数的结果。在函数中执行。
标签: javascript string function if-statement