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);