아나그램 -
첫 번째 문자열을 재배열, 바꾸어 말하거나 섞어서 두 번째 문자열과 동일한 문자열을 형성할 수 있는 경우 두 문자열을 서로의 아나그램이라고 합니다.
예를 들어 -
'something'과 'emosghtin'은 서로의 아나그램입니다.
str1과 str2라고 하는 두 개의 문자열을 받아 서로 아나그램이면 true를 반환하고 그렇지 않으면 false를 반환하는 JavaScript 함수를 작성해야 합니다.
예시
이에 대한 코드는 -
const str1 = "something";
const str2 = "emosghtin";
const validAnagram = (str1 = '',str2 = '') => {
let obj1 = {}
let obj2 = {}
if (str1.length !== str2.length){
return false
};
for(let char of str1){
obj1[char]= (obj1[char] || 0) + 1
};
for(let char of str2){
obj2[char]= (obj2[char] || 0) + 1
};
for(let val in obj1){
if(!(val in obj2) || (obj2[val] !== obj1[val])){
return false
}
};
return true;
};
console.log(validAnagram(str1, str2)); 출력
콘솔의 출력은 -
true