JSFiddle - React, Tailwind, and code Playground
JavaScript
var letters = ['a', 'b', 'c', 'd'];
var letterCount = letters.length;
var iterations = Math.pow(letterCount, letterCount);
for (var i = 0; i < iterations; i++) {
var word = "";
for (var j = 0; j < letterCount; j++) {
word += letters[Math.floor(i / Math.pow(letterCount, j)) % letterCount];
}
document.write(word + "<br>");
}