{"ScriptPreparationCode":null,"TestCases":[{"Name":"For","Code":"for(i=0;i\u003C100;)console.log((\u002B\u002Bi%3?\u0027\u0027:\u0027Fizz\u0027)\u002B(i%5?\u0027\u0027:\u0027Buzz\u0027)||i)","IsDeferred":false},{"Name":"Array join","Code":"console.log(\r\n Array.apply(null, {length: 100}).map(function(val, index) {\r\n return (\u002B\u002Bindex%3?\u0027\u0027:\u0027Fizz\u0027)\u002B(index%5?\u0027\u0027:\u0027Buzz\u0027)||index;\r\n }).join(\u0027\\n\u0027)\r\n);","IsDeferred":false},{"Name":"Array map","Code":"console.log(\r\n Array.apply(null, {length: 100}).map(function(val, index) {\r\n index\u002B\u002B;\r\n if (index % 15 == 0){return \u0022FizzBuzz\u0022;}\r\n if (index % 3 == 0){return \u0022Fizz\u0022;}\r\n if (index % 5 == 0){return \u0022Buzz\u0022;}\r\n return index;\r\n }).join(\u0027\\n\u0027)\r\n);","IsDeferred":false},{"Name":"Wtf","Code":"var i, values = [, , \u0027fizz\u0027, , \u0027buzz\u0027, \u0027fizz\u0027, , , \u0027fizz\u0027, \u0027buzz\u0027, , \u0027fizz\u0027, , , \u0027fizzbuzz\u0027];\r\n\r\nfor (i = 0; i \u003C 100; console.log(values[i\u002B\u002B % 15] || i));","IsDeferred":false},{"Name":"Longread","Code":"(function (window) {\r\n \u0027use strict\u0027;\r\n var counter = 1;\r\n var limit = 100;\r\n var options = {\r\n 3: \u0027Fizz\u0027,\r\n 5: \u0027Buzz\u0027,\r\n \u0027default\u0027: function (input) {\r\n return input;\r\n }\r\n };\r\n\r\n var noop = function () {\r\n return;\r\n };\r\n\r\n var print = function (input) {\r\n var output = [];\r\n Object.keys(options).map(\r\n function (key) {\r\n (((typeof options[key] !== \u0027function\u0027) \u0026\u0026 ((parseInt(input, 10) % parseInt(key, 10)) === 0)) ? Array.prototype.push : noop).call(output, options[key]);\r\n }\r\n );\r\n return console.log.call(console, output.length ? output.join(\u0027\u0027) : options.default.call(this, input));\r\n };\r\n\r\n for (; counter \u003C= limit; counter \u002B= 1) {\r\n print.call(this, counter);\r\n }\r\n})(this);","IsDeferred":false},{"Name":"For#2","Code":"for (var i=0;i\u003C=100;i\u002B\u002B) console.log(!(i%15)\u0026\u0026\u0022fizzbuzz\u0022||!(i%5)\u0026\u0026\u0022buzz\u0022||!(i%3)\u0026\u0026\u0022fizz\u0022||i);","IsDeferred":false},{"Name":"Wtf#2","Code":"var fizzBuzz = function* () {\r\n var i = 0;\r\n do {\r\n const isFizz = i % 3 === 0;\r\n const isBuzz = i % 5 === 0;\r\n yield (isFizz ? isBuzz ? \u0022FizzBuzz\u0022 : \u0022Fizz\u0022 : isBuzz ? \u0022Buzz\u0022 : i);\r\n } while (\u002B\u002Bi)\r\n }\r\n\r\nvar it = fizzBuzz();\r\n\r\nfor (let i = 0; i \u003C 100; i\u002B\u002B){\r\n console.log(it.next().value);\r\n}","IsDeferred":false},{"Name":"For#3","Code":"for (var i = 1; i \u003C= 100; i\u002B\u002B) { answer = \u0022 \u0022; if (i % 3 == 0) { answer \u002B= \u0027Fizz\u0027; } if (i % 5 == 0) { answer \u002B= \u0027Buzz\u0027; } console.log(answer || i); }","IsDeferred":false},{"Name":"22 Iterations","Code":"let i = 0\r\nlet j = 1\r\nlet limit = 100\r\n//prints zero\r\nconsole.log(i);\r\nwhile (true) {\r\n if (i \u003E limit - 4) break; //can also kept in loop; but I always enjoy infinte loops breaking ;-) and have to subtract with 4 if needed till 99\r\n i = i \u002B 5;\r\n\r\n (i - 4) % 3 === 0 ? console.log(i - 4 \u002B \u0022 - Fizz\u0022) : console.log(i - 4);\r\n (i - 3) % 3 === 0 ? console.log(i - 3 \u002B \u0022 - Fizz\u0022) : console.log(i - 3);\r\n (i - 2) % 3 === 0 ? console.log(i - 2 \u002B \u0022 - Fizz\u0022) : console.log(i - 2);\r\n (i - 1) % 3 === 0 ? console.log(i - 1 \u002B \u0022 - Fizz\u0022) : console.log(i - 1);\r\n\r\n\r\n if (i % 3 === 0) {\r\n console.log(i \u002B \u0022 - FizzBuzz\u0022);\r\n continue\r\n }\r\n\r\n console.log(i \u002B \u0022 - Buzz\u0022)\r\n\r\n j\u002B\u002B //Loop Counter\r\n\r\n}\r\n\r\nconsole.log(\u0027Total iterations ran: \u0027, j)","IsDeferred":false},{"Name":"Array map#2","Code":"console.log(\r\n [...Array(100).keys()].map((_, i) =\u003E i \u002B 1)\r\n .map(i =\u003E (i % 3 === 0 \u0026\u0026 i % 5 === 0)\r\n ? \u0022FizzBuzz\u0022\r\n : (i % 3 === 0)\r\n ? \u0022Fizz\u0022\r\n : (i % 5 === 0)\r\n ? \u0022Buzz\u0022\r\n : i)\r\n .join(\u0022\\n\u0022)\r\n);","IsDeferred":false}]}