[프로그래머스 | Javascript] 코딩테스트 Lv1 - 문자열 다루기 기본

✔문제 설명

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

 

제한 사항

  • s는 길이 1 이상, 길이 8 이하인 문자열입니다.
  • s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다.

✔입출력 예

s                                        return

"a234" false
"1234" true

✔나의 풀이

function solution(s) {

    if(s.length === 4 || s.length === 6){
        return s.split("").every(c => !isNaN(c)) // 모든 요소가 number이면 true리턴
    } else {
        return false;
    }
}

숫자에 e가 붙으면 지수로 판단되어 문자인 경우도 숫자로 판단된다는 것을 깨달았다. 
그래서 모든 요소가 number인 경우로 판별

Array.evey() 함수는 모든 요소를 판별하여 boolean값을 리턴한다.