본문 바로가기

알고리즘

문자열을 입력받아 문자열을 구성하는 각 문자(letter)를 키로 갖는 객체반환

function countAllCharacters(str) {

 // TODO: 여기에 코드를 작성합니다.

 // 문자열의 각 문자 : key , 각 문자가 문자열에 등장한 횟수 : value

 // match()와 정규표현식을 사용하여 갯수 파악

 let resultObj = {};

 if(str.length > 0) {

   for(let i=0;i<str.length;i++){

     let regExp = new RegExp(str[i],'g');

//let regExp = new RegExp(`${str[i]} 문자열 추가`,'g');//백틱사용

     // 해당 문자로 정규표현식 생성(옵션 g 추가)

     // 문자열로 정규표현식을 할당하면 안되고 정규표현 객체를 이용하여 정규표현식을 할당해야 한다.

     // /문자/g 와 같은 형태임('/문자/g'와 다름,''가 없어야 함, 문자열이 아님)

 

     resultObj[str[i]] = str.match(regExp).length;

     // 해당 문자로만 이루어진 배열의 길이(해당 문자가 문자열에 존재하는 갯수)

     // match()메소드 이용

 

   }

   return resultObj;

 }

 else return resultObj;

}