The FizzBuzz problem is a classic test given in coding interviews. The task is simple: Print integers 1 to N, but print “Fizz” if an integer is divisible by 3, “Buzz” if an integer is divisible by 5, and “FizzBuzz” if an integer is divisible by both 3 and 5.
const isFizz = number => number%3 ==0;
const isBuzz = number => number%5 ==0;
const range = (start, end) => [...new Array(end - start).keys()].map((n) => n + start);
const doFizzBuzz = (start, end) => range(start, end).map((number => {
if(isFizz(number) && isBuzz(number)) {
return 'FizzBuzz';
} else if(isFizz(number)) {
return 'Fizz';
} else if(isBuzz(number)) {
return 'Buzz';
} else {
return number;
}
}))
.join(`\n`);
console.log(doFizzBuzz(1, 101));