- 문자열 s의 길이가 4 혹은 6
- 숫자로만 구성
- s는 길이 1 이상, 길이 8 이하인 문자열
초기 코드
숫자를 체크하기 위해서 문자열을 한번 숫자들과 대조하여 체크했었다.
function solution(s) {
var answer = '';
if (s.length == 4 || s.length == 6) { // 문자열의 길이가 4혹은 6
for (var i = 0; i < s.length; i++) { // 문자열의 길이 만큼 체크
if (s[i] >= 0 && s[i] <= 9) { // 0에서 9사이의 숫자가 맞는지 확인
answer = true;
} else { // 0에서 9사이의 숫자가 아님
answer = false;
break;
}
}
} else { // 문자열의 길이가 4혹은 6이 아님
answer = false;
}
return answer;
}
최종 코드
숫자 체크하는 방법을
match를 사용하여 정규식으로 표현하는 방법으로 변경하였다.
function solution(s) {
let answer = false;
if(s.length == 4 || s.length == 6) { // 문자열의 길이가 4 혹은 6
answer = s.match(/\D/gi) == null ? true : false; // 모두 숫자인지 확인
}
return answer;
}
'프로그래머스 > JavaScript' 카테고리의 다른 글
[프로그래머스 Javascript] Level1 행렬의 덧셈 (0) | 2019.02.06 |
---|---|
[프로그래머스 Javascript] Level1 같은 숫자는 싫어 (0) | 2019.02.03 |
[프로그래머스 Javascript] Level1 최대공약수와 최소공배수 (0) | 2019.02.03 |
[프로그래머스 Javascript] Level1 문자열 내 p와 y의 개수 (0) | 2019.02.02 |
[프로그래머스 Javascript] Level1 나누어 떨어지는 숫자 배열 (0) | 2019.01.26 |