UNPKG

fizz_buzz

Version:
28 lines (22 loc) 881 B
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.fizzBuzz = undefined; var _utils = require('./utils'); /* eslint-disable */ /** (x: number) -> string | number */ var fizzBuzz = exports.fizzBuzz = function fizzBuzz(x) { return (0, _utils.multipleOf)(3, 5)(x) ? 'FizzBuzz' : (0, _utils.multipleOf)(3)(x) ? 'Fizz' : (0, _utils.multipleOf)(5)(x) ? 'Buzz' : x; }; /* eslint-enable */ /** :: (print: Function, max: number?) -> void */ var play = function play() { var print = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : (0, _utils.required)(); var min = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1; var max = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 100; for (var num = min; num <= max; num += 1) { print(fizzBuzz(num)); } }; exports.default = play;