let letters = {"a":2, "b":3, "c":5, "d":7, "e":11, "f":13, "g":17, "h":19, "i":23, "j":29, "k":31, "l":37, "m":41, "n":43, "o":47, "p":53, "q":59, "r":61, "s":67, "t":71, "u":73, "v":79, "w":83, "x":89, "y":97, "z":101};
const isAnagram = (str1, str2) =>
{
str1 = str1.toLowerCase();
str2 = str2.toLowerCase();
let repStr1 = 1, repStr2 = 1;
for (let i = 0; i < Math.max(str1.length, str2.length); i++)
{
repStr1 *= (str1[i] && letters[str1[i]]) ? letters[str1[i]] : 1;
repStr2 *= (str2[i] && letters[str2[i]]) ? letters[str2[i]] : 1;
}
return (repStr1 === repStr2);
};
console.log("[dog, goD] Anagrams?", isAnagram('dog', 'goD'));
console.log("[dogo, goD] Anagrams?", isAnagram('dogo', 'goD'));
console.log("[Roast Beef, Eat for BSE] Anagrams?", isAnagram('Roast Beef', 'Eat for BSE'));
.as-console {background-color:black !important; color:lime;}
.as-console-wrapper {max-height:100% !important; top:0;}