Algorithm/programmers
[Algorithm] JavaScript, Level1. 문자열 다루기 기본
chanCo
2022. 9. 22. 00:05
#1. 문자열 다루기 기본
문제 설명
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.
제한조건
- s는 길이 1 이상, 길이 8 이하인 문자열입니다.
- s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다.
입출력 예
s | return |
"a234" | false |
"1234" | true |
풀이
function solution(s) {
// 파라미터로 받은 값의 길이가 4 또는 6이 아니면 false 반환
if(s.length !== 4 && s.length !== 6) return false;
// split 함수를 사용하여 문자열을 배열로 변환
const check = s.split('');
// 0부터 배열의 길이까지 반복문을 돌면서
for(let i = 0; i < check.length; i++) {
// NaN이 확인되면 false 반환
if(isNaN(check[i])) return false
}
// 문제가 없다면 true를 반환
return true;
}
// 호출
solution("1234"); // true
solution("a234"); // false
solution("1e00"); // false
결과
소감
isNaN 함수는 파라미터로 전달 된 값이 숫자가 아닌경우 true, 숫자일 경우 false를 반환합니다.
숫자로 변환 가능한 형식일 경우 false를 반환합니다. 즉, NaN이 아니기 때문에 false를 반환하고, 숫자로 변경 가능함을 알려줍니다.
NaN은 비교연산자(==, ===)를 사용해서 판별 할 수 없기 때문에 isNaN 함수를 사용합니다.