[7kyu]Fizz Buzz

2017-07-04  本文已影响26人  君肄塵

该算法题来自于 codewars【语言: javascript】,翻译如有误差,敬请谅解~


const fizzbuzz = n => {
  let arr = [];
  for(let i=1;i<=n;i++){
    if(i%3 && i%5){
      arr.push(i);
    } else {
      !(i%3+i%5) ? arr.push('FizzBuzz') : (i%3 ? arr.push('Buzz') : arr.push('Fizz'));
    }
  }
  return arr;
}
const fizzify = fizzbuzz;
var fizzify = fizzbuzz = n => {
      return Array.apply(null, new Array(n)).map(function(e, i){
        return (++i % 3 ? '' : 'Fizz' ) + (i % 5 ? '' : 'Buzz') || i;
      }); 
}
function fizzbuzz(n) {
      var fizzified = [];
      for (var i = 1; i <= n; i++) {
        var val = '';
        if (i % 3 == 0) val += 'Fizz';
        if (i % 5 == 0) val += 'Buzz';
        fizzified.push(val || i);
      }
      return fizzified;
}
function fizzify(n) {
      return fizzbuzz(n);
}
function fizzify(i) {
      if (i % 15 == 0) return 'FizzBuzz';
      else if (i % 5 == 0) return 'Buzz';
      else if (i % 3 == 0) return 'Fizz';
      else return i;
}
function fizzbuzz(n) {
      var res = [];
      for (var i = 1; i <= n; ++i) res.push(fizzify(i));
      return res;
}
// [...Array(n+1).keys()].slice(1) 可以获取1-n的连续数字
const fizzify = fizzbuzz = n => [...Array(n+1).keys()].slice(1).map(x=>x%15===0?'FizzBuzz':x%3===0?'Fizz':x%5===0?'Buzz':x);
上一篇 下一篇

猜你喜欢

热点阅读