JAVA SCRIPT/코딩테스트
프로그래머스 :: 문자열 다루기 기본 (JS)
ㅈㅣㄴ
2023. 12. 7. 11:13
프로그래머스 :: 문자열 다루기 기본 (JS)
문제 설명
문자열 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 (String(s).length === 4 || String(s).length === 6) { for (let i = 0; i < String(s).length; i++){ if (isNaN(String(s)[i])){ return false; } } return true; } return false; }
- 처음에 문제를 풀었을 때, 16진수 인식으로 인한 오류가 발생하였다.
- for 문을 사용하여 각 자릿수 하나하나 isNaN 으로 숫자인지 아닌지 판별 하는 방식으로 풀이했다.
- return 의 위치가 중요한 것 같다.
다른 사람의 문제 풀이
function alpha_string46(s){ var regex = /^\d{6}$|^\d{4}$/; return regex.test(s); }
정규식을 이용한 문제 풀이도 있다...