JSFiddle - React, Tailwind, and code Playground
HTML
<div id="Console"></div>
JavaScript
window.onload = function() {
var dt1 = new Date();
WriteLine(FindAllPermutations("hello world"));
var dt2 = new Date();
WriteLine("Code took " + (dt2.getTime() - dt1.getTime()) + " milliseconds to execute");
};
function FindAllPermutations(str, index, buffer) {
if (typeof str == "string")
str = str.split("");
if (typeof index == "undefined")
index = 0;
if (typeof buffer == "undefined")
buffer = [];
if (index >= str.length)
return buffer;
for (var i = index; i < str.length; i++)
buffer.push(ToggleLetters(str, index, i));
return FindAllPermutations(str, index + 1, buffer);
}
function ToggleLetters(str, index1, index2) {
if (index1 != index2) {
var temp = str[index1];
str[index1] = str[index2];
str[index2] = temp;
}
return str.join("");
}
function WriteLine(msg) {
document.getElementById("Console").innerHTML += msg + "<br />";
}