728x90
반응형
문자열 다루기 기본
문제설명 :
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.
제한 사항
- s는 길이 1 이상, 길이 8 이하인 문자열입니다.
- s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다.
입출력 예
s | Return |
"a234" | false |
"1234" | true |
첫번째 접근
: s의 길이가 4 또는 6일 때, 각 요소의 합을 구한 후, 합이 숫자이면 true 를 아니면 false를 반환한다. 나머지 경우는 false를 반환한다. 정확성 100으로 통과.
function solution(s) {
if(s.length === 4 || s.length === 6){
let result = s.split('').reduce((a,c) => a + (c * 1), 0)
return isNaN(result) ? false : true
}
return false
}
두번째 접근
: isNaN()을 사용한다면, result를 따로 구하지 않아도 될 것 같다. 정확성 96.7로 통과.
function solution(s) {
if(s.length === 4 || s.length === 6){
return isNaN(s) ? false : true
}
return false
}
solution
function alpha_string46(s){
var regex = /^\d{6}$|^\d{4}$/;
return regex.test(s);
}
728x90
반응형
'자료구조 및 알고리즘 > JavaScript Practice' 카테고리의 다른 글
JS Practice) 프로그래머스 Lv.1 : 3진법 뒤집기 (0) | 2023.06.21 |
---|---|
JS Practice) 프로그래머스 Lv.1 : 행렬의 덧셈 (0) | 2023.06.21 |
JS Practice) 프로그래머스 Lv.1 : 부족한 금액 계산하기 (0) | 2023.06.19 |
JS Practice) 프로그래머스 Lv.1 : 문자열 내림차순으로 배치하기 (0) | 2023.06.16 |
JS Practice) 프로그래머스 Lv.1 : 약수의 개수와 덧셈 (0) | 2023.06.15 |