CodingSpace

코드스테이츠/코플릿 - isIsogram 본문

코드스테이츠/코플릿

코드스테이츠/코플릿 - isIsogram

개발자_조이킴 2022. 7. 29. 22:20

Problem. isIsogram


Description.

문자열을 입력받아 아이소그램인지 여부를 리턴하는 함수를 작성하시오.

아이소그램(isogram)은 각 알파벳을 한번씩만 이용해서 만든 단어나 문구를 말합니다.

※ 빈 문자열을 입력받은 경우, true 반환 / 대소문자를 구별하지 않음

 

입력:

  • 인자1: str
    • string 타입의 공백이 없는 알파벳 문자열

 

출력: 

  • boolean 타입을 반환

My Answer. 

function isIsogram(str) {
  // 빈 문자열인 경우, true를 반환
  if(str.length === 0) 
    return true;
  // 대문자로 변환
  str = str.toUpperCase();
  let obj = {};

  for(let i = 0; i < str.length; i++) {
    let key = str[i];
    // obj에 현재 key가 있는지 여부 확인
    let check = Object.keys(obj).includes(str[i]);
    // 현재 key가 있는 경우
    if(check === true) {
      if(obj[key] === 0)
        obj[key] = obj[key] + 1;
      else if(obj[key] !== 0)
        return false;
    }
    // 현재 key가 없는 경우
    else if(check === false)
        obj[key] = 1;
  }
  return true;
}

Comments.

코드스테이츠 저작권으로 문제가 된다면 본 게시물 비공개로 처리하겠습니다!

SEB IM 34기 수료생

Comments