Fizz Buzz 游戏的未定义结果 Javascript
Undefined result from Fizz Buzz game Javascript
我有一项任务,我必须在 Javascript 中进行 FizzBuzz 游戏。问题是当我 运行 函数时我得到 'Answer = undefined' 。我必须用逗号分隔值打印它,但我想我可以自己弄清楚;提前致谢。问候,托马斯。
function fizzBuzz(start, stop) {
for(var i = start; i <= stop; i++) {
if (i % 3 == 0 && i % 5 == 0) {
document.write("Fizz Buzz");
}else if(i % 3 == 0) {
document.write("Fizz");
}else if(i % 5 == 0) {
document.write("Buzz");
}else {
document.write(i);
}
}
}
ANSWER = (fizzBuzz(4, 22));
因为 fizzBuzz
函数没有 returning 任何东西。您需要 return 该函数的结果。 document.write
将文本写入文档。
你没有return从你的函数中获取任何东西。
ANSWER 将是您在函数中 'return' 的内容。
如果你想return你需要做的事情的所有值
var ans='';
...
如果(随便)ans+= 'Fizz Buzz,';
....
return ans.substring(0,ans.length-1);
对您的代码进行一些修改...
function fizzBuzz(start, stop) {
var i;
var results = [];
for (i = start; i <= stop; i++) {
if (i % 15 == 0) {
results.push('Fizz Buzz');
} else if (i % 3 == 0) {
results.push('Fizz');
} else if (i % 5 == 0) {
results.push('Buzz');
} else {
// cast to string just so all the results in the array are string
results.push(i + '');
}
}
return results;
}
ANSWER = fizzBuzz(4, 22); // output: [ '4', 'Fizz', 'Buzz', '7', '8', ...etc ]
<html>
<script>
function fizzBuzz(start, stop) {
var str = 'ANSWER = ';
for(var i = start; i <= stop; i++) {
if (i % 3 == 0 && i % 5 == 0) {
str += "Fizz Buzz";
}else if(i % 3 == 0) {
str += "Fizz";
}else if(i % 5 == 0) {
str += "Buzz";
}else {
str += i;
}
if (i<stop)
str += ", ";
}
document.getElementById('writeto').innerHTML += str;
}
fizzBuzz(4, 22);
</script>
<body>
<a id='writeto'></a>
</body>
</html>
我有一项任务,我必须在 Javascript 中进行 FizzBuzz 游戏。问题是当我 运行 函数时我得到 'Answer = undefined' 。我必须用逗号分隔值打印它,但我想我可以自己弄清楚;提前致谢。问候,托马斯。
function fizzBuzz(start, stop) {
for(var i = start; i <= stop; i++) {
if (i % 3 == 0 && i % 5 == 0) {
document.write("Fizz Buzz");
}else if(i % 3 == 0) {
document.write("Fizz");
}else if(i % 5 == 0) {
document.write("Buzz");
}else {
document.write(i);
}
}
}
ANSWER = (fizzBuzz(4, 22));
因为 fizzBuzz
函数没有 returning 任何东西。您需要 return 该函数的结果。 document.write
将文本写入文档。
你没有return从你的函数中获取任何东西。
ANSWER 将是您在函数中 'return' 的内容。
如果你想return你需要做的事情的所有值
var ans='';
...
如果(随便)ans+= 'Fizz Buzz,';
....
return ans.substring(0,ans.length-1);
对您的代码进行一些修改...
function fizzBuzz(start, stop) {
var i;
var results = [];
for (i = start; i <= stop; i++) {
if (i % 15 == 0) {
results.push('Fizz Buzz');
} else if (i % 3 == 0) {
results.push('Fizz');
} else if (i % 5 == 0) {
results.push('Buzz');
} else {
// cast to string just so all the results in the array are string
results.push(i + '');
}
}
return results;
}
ANSWER = fizzBuzz(4, 22); // output: [ '4', 'Fizz', 'Buzz', '7', '8', ...etc ]
<html>
<script>
function fizzBuzz(start, stop) {
var str = 'ANSWER = ';
for(var i = start; i <= stop; i++) {
if (i % 3 == 0 && i % 5 == 0) {
str += "Fizz Buzz";
}else if(i % 3 == 0) {
str += "Fizz";
}else if(i % 5 == 0) {
str += "Buzz";
}else {
str += i;
}
if (i<stop)
str += ", ";
}
document.getElementById('writeto').innerHTML += str;
}
fizzBuzz(4, 22);
</script>
<body>
<a id='writeto'></a>
</body>
</html>