JSFiddle - React, Tailwind, and code Playground
by Rene Kriest
HTML
<h2>Array manipulation using sparse arrays</h2>
<div id="factorial_output"></div>
<div id="strMulti_output"></div>
JavaScript
// loop-free factorial
// (c) https://twitter.com/angustweets/status/459152382652211200
function factorial(n) {
eval("i=1;r=1;" + (arr = new Array(n + 1), arr.join('r *= i++;')));
return r;
}
// https://twitter.com/WebReflection/status/459156715523420160
function factorial2(n) {
return eval("var i=1,r=i;" + Array(n + 1).join('r*= i++;'))
}
// Rene Kriest
function myOwnFactorial(n) {
return eval("i=1;r=1;" + new Array(n + 1).join('r *= i++;'));
}
// The technique behind it: sparse Arrays
function stringMultiplicator(str, n) {
return new Array(n + 1).join(str);
}
document.getElementById('factorial_output').innerText = myOwnFactorial(5); // result === 120
document.getElementById('strMulti_output').innerText = stringMultiplicator("eval is cool! ", 3);