[알고리즘 문제풀이]

😎·2022년 11월 19일
0

알고리즘 문제풀이

목록 보기
9/27

문제 설명
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.

제한 사항
s는 길이 1 이상, 길이 8 이하인 문자열입니다.
s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다.
입출력 예
s return
"a234" false
"1234" true

내가 작성한 코드

function solution(str) {
    if(str.length===4 || str.length===6){
        for(let i=0; i<str.length; i++){

            if(!isNaN(parseInt(str[i]))){
                console.log(i+'번째 통과')
            }else{
                return false;
            }

        }
        return true;
    }else{
        return false;
    }
}


console.log(solution('1a11'))
>1번째 통과
false

console.log(solution('123456'))
1번째 통과
2번째 통과
3번째 통과
4번째 통과
5번째 통과
6번째 통과
true

해설

제일처음 if문으로 문자열의 길이가 4,6 인지 확인 하였고
그다음 문자열의 인덱스를 통해 문자 하나하나를 꺼내서 parseInt() 메소드를 통해 꺼낸 문자를 숫자로 모두 변경하고 이때 문자값이 들어간다면 NaN 이 반환되는것을 이용해 isNaN() 메소드를 활용하여 if문을 작성 하였음!

profile
개발 블로그

0개의 댓글