JSFiddle - React, Tailwind, and code Playground

by colorkid

JavaScript

function buildCharObject(str) {
	const obj = {};
	for(let char of str.toLowerCase()) {
  	obj[char] = obj[char] + 1 || 1;
  }
  return obj;
}

function anagram(str1, str2) {
	const obj1 = buildCharObject(str1);
  const obj2 = buildCharObject(str2);
  if(Object.keys(obj1).length !== Object.keys(obj2).length) {
    return false
  }
  for(let char in obj1) {
    if(obj1[char] !== obj2[char]) {
      return false
    }
  }
  // Если проверка успешна, строки являются анаграммами — возвращаем true
  return true

}

console.log(anagram('finder', 'Friend'));
console.log(anagram('hello', 'bye'));