题目描述
实现 fizzBuzz
函数,参数 num
与返回值的关系如下:
1、如果 num
能同时被 3 和 5 整除,返回字符串 fizzbuzz
2、如果 num
能被 3 整除,返回字符串 fizz
3、如果 num
能被 5 整除,返回字符串 buzz
4、如果参数为空或者不是 Number 类型,返回false
5、其余情况,返回参数 num
解决办法
1. 运用isNan()
方法
isNaN()
函数用于检查其参数是否是非数字值
。
语法
isNaN(x)
参数 | 描述 |
---|---|
x | 必需。要检测的值。 |
返回值
如果 x
是特殊的非数字值 NaN
(或者能被转换为这样的值),返回的值就是 true
。如果 x
是其他值,则返回 false
。
代码
function fizzBuzz(num) {
if(isNaN(num)){
return false;
}
var str='';
if(num%3===0){
str+='fizz';
}
if(num%5===0){
str+='buzz';
}
return str||num;
}
2. 最原始的方法
function fizzBuzz(num) {
if(num % 3 === 0 && num % 5 === 0){
return 'fizzbuzz';
}else if(num % 3 === 0){
return 'fizz';
}else if(num % 5 === 0){
return 'buzz';
}else if(num === null | typeof(num) != 'number'){
return false;
}else{
return num;
}
}