#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 함수를 사용합니다.
'Algorithm > programmers' 카테고리의 다른 글
[Algorithm] JavaScript, Level1. 문자열 내 p와 y의 개수 (0) | 2022.09.25 |
---|---|
[Algorithm] JavaScript, Level1. 문자열 내림차순으로 배치하기 (0) | 2022.09.24 |
[Algorithm] JavaScript, Level1. 서울에서 김서방 찾기 (0) | 2022.09.22 |
[Algorithm] JavaScript, Level1. 수박수박수박수박수? (0) | 2022.09.21 |
[Algorithm] JavaScript, Level1. 문자열을 정수로 바꾸기 (0) | 2022.09.20 |