JSFiddle - React, Tailwind, and code Playground

by Darby Rathbone

HTML

<script>
[].forEach.call(document.scripts, function (e) {
    
    var pow = /((?:\d*\.?\d+)|(?:[a-zA-Z0-9.]+(?:\(.*\))?)|(?:\(.*\)))\s*?(?:[*][*])\s*?((?:\d*\.?\d+)|(?:[a-zA-Z0-9.]+(?:\(.*\))?)|(?:\(.*\)))/gim;
    var trunc = /((?:\d*\.?\d+)|(?:[a-zA-Z0-9.]+(?:\(.*\))?)|(?:\(.*\)))\s*?(?:[~][/])\s*?((?:\d*\.?\d+)|(?:[a-zA-Z0-9.]+(?:\(.*\))?)|(?:\(.*\)))/gim;
    var str = e.innerHTML;
    var powsubst = 'Math.pow($1,$2)';
    var truncsubst = '$1/$2|0';
 
        var old = e.innerHTML;
    e.innerHTML = e.innerHTML.replace(pow, powsubst).replace(trunc,truncsubst);
        if(old !== e.innerHTML)
            (new Function(e.innerHTML)).call(e);
});
</script>

JavaScript

document.body.appendChild(document.createTextNode(10**10));
    var i = 5;
    
    console.log('4**i~/13');