实现 fizzBuzz 函数,参数 num 与返回值的关系如下:
1、如果 num 能同时被 3 和 5 整除,返回字符串 fizzbuzz
2、如果 num 能被 3 整除,返回字符串 fizz
3、如果 num 能被 5 整除,返回字符串 buzz
4、如果参数为空或者不是 Number 类型,返回 false
5、其余情况,返回参数 num
15
fizzbuzz
15
fizzbuzz
function fizzBuzz(num) { if(typeof num!=='number') return false let str ='' if(num%3===0) str+='fizz' if(num%5===0) str+='buzz' return str?str:num }
function fizzBuzz(num) { if (typeof num!=='number'){ return false }else { return num%15===0?'fizzbuzz':num%3===0?'fizz':num%5===0?'buzz':num } }
function fizzBuzz(num) { if(num == null || typeof num !== 'number') return false; if(num % 3 === 0 && num % 5 === 0) return 'fizzbuzz'; else if(num % 3 === 0) return 'fizz'; else if(num % 5 === 0) return 'buzz'; else return num; }
function fizzBuzz(num) { if(num.constructor() !== Number()) return false return num%3 === 0 && num%5 === 0 ? 'fizzbuzz' : num%3 === 0 ? 'fizz' : num%5 === 0 ? 'buzz' : num }
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||typeof num !== 'number') return false else return num }
function fizzBuzz(num) {let reg = /^\d+\./let fizz = 'fizz'let buzz = 'buzz'let a = num / 3if (typeof num != 'number') return falseif (reg.test(num / 3) == false && reg.test(num / 5) == false) {console.log(num / 3, num / 5);return fizz + buzz}if (reg.test(num / 3) == false && reg.test(num / 5) == true) {console.log(num / 3, num / 5);return fizz}if (reg.test(num / 3) == true && reg.test(num / 5) == false) {console.log(num / 3, num / 5);return buzz}return num}
能否整除即余数是否为0,则使用%运算符。使用if-elseif结构,只要某一条匹配,则下面的不会在进行判断。判断num是否为Number,可以用typeof运算符,返回的是字符串。