반응형
문제 설명
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.
제한사항
- s는 길이 1 이상, 길이 8 이하인 문자열입니다.
- s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다.
입출력 예
s | result |
"a234" | false |
"1234" | true |
나의 풀이
function solution(s) {
return (s.length === 4 || s.length === 6)&& s.split("").reduce((acc,cur) => acc && !isNaN(cur),true);
}
isNaN(s)를 사용할 경우 "1e30"과 같은 경우 isNaN에서 false를 출력하기 때문에 split으로 문자 하나하나 비교해서
문제를 풀었다.
정규표현식으로 푸는 방법도 있었는데,
function alpha_string46(s){
var regex = /^\d{6}$|^\d{4}$/;
return regex.test(s);
}
반응형
'알고리즘' 카테고리의 다른 글
[알고리즘] 폰켓몬 (0) | 2023.04.24 |
---|---|
[알고리즘] 문자열 내 마음대로 정렬하기 (0) | 2023.04.21 |
[알고리즘] 문자열 내림차순으로 배치하기 (0) | 2023.04.18 |
[알고리즘] 하샤드 수 (0) | 2023.04.15 |
[알고리즘] 2016년 (0) | 2023.04.08 |