문제설명
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.
제한사항
s는 길이 1 이상, 길이 8 이하인 문자열입니다.
s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다.
function solution(s) {
// s의 length가 4 또는 6
if (s.length == 4 || s.length == 6) {
// 문자열 분해 후, isNaN으로 검사
return s.split('').every(c => !isNaN(c))
} else {
return false;
}
}
isNaN()
타입이 숫자인지 아닌지 판별하는 함수로 많이 쓰인다.
every()
모든 원소가 주어진 조건에 맞는지 확인하는 함수
isNaN만 사용하게 되면 E가 붙은 지수도 숫자로 인식할 수 있기 때문에 every를 사용하여 하나하나 검사한 후, return한다.
'Study > 코딩테스트' 카테고리의 다른 글
[프로그래머스] 최대공약수와 최대공배수 (0) | 2023.04.25 |
---|---|
[프로그래머스] 행렬의 덧셈 (0) | 2023.04.23 |
[프로그래머스] 약수의 개수와 덧셈 (0) | 2023.04.21 |
[프로그래머스] 수박수박수박수박수박수? (0) | 2023.04.21 |
[프로그래머스] 모음 제거(JavaScript) (0) | 2023.04.18 |