使用JS对不用数字进行判断输出不同的结果
数字 | 结果 |
---|---|
3 | Fizz |
5 | Buzz |
7 | Whizz |
3 * 5 | FizzBuzz |
3 * 7 | FizzWhizz |
5 * 7 | BuzzWhizz |
3 * 5 * 7 | FizzBuzzWhizz |
使用JS过程中出现的一些问题
-
使用var定义变量
JS中定义变量都是使用var,并不会存在int ,double等类型。
-
改变test类型
直接改变了test的类型,原本是变量,但是使用function 来定义了test()
-
优化代码
在run的方法中原本是直接使用num%数字判断是否能够整除,由于结果会有8种:数字本身,Fizz,Buzz,Whizz,以三个的组合。在优化之前是直接判断是8种情况的哪一种。优化代码:将8种情况简化为4中:数字本身,Fizz,Buzz,Whizz。一次判断一个数字,能否被3、5、7整除,能则输出Fizz,Buzz,Whizz。简化的思路是因为被3*5整除的数输出的结果是FizzBuzz正好是被3和被5整除的输出结果Fizz、Buzz的结合。
代码
function run(num) {
var n='';
if(num%3==0)
{
n=n+'Fizz';
}
if(num%5==0)
{
n=n+'Buzz';
}
if(num%7==0)
{
n=n+'Whizz';
}
if(n=='')
{
n=num.toString();
}
if(num==0)
{
n=0;
}
return n;
}
function test(num){
var result = run(num);
document.write('The test '+ num +' result is ' + result+'<br>')
}
test(3)
test(5)
test(7)
test(15)
test(21)
test(35)
test(105)
网友评论