문제 설명
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.
제한 사항
- s는 길이 1 이상, 길이 8 이하인 문자열입니다.
입출력 예
s | return |
"a234" | false |
"1234" | true |
답
function solution(s) {
var answer = true;
if((s.length == 4 || s.length == 6) && s == parseInt(s)){
answer = true;
} else{
answer = false;
}
return answer;
// !isNaN(parseInt(s)) 이거 쓰면 오류 발생 안쓰는게 좋을 듯 관련 오류는 아래 글 참조
//지수 형식이 들어오거나 빈칸이 들어오는 케이스에서 오류발생
}
MDN isNaN 문서: https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/isNaN
isNaN() - JavaScript | MDN
isNaN() 함수는 어떤 값이 NaN인지 판별합니다. isNaN 함수는 몇몇 혼란스러운 케이스을 가지고 있으므로, ECMAScript 2015에서 추가한 Number.isNaN()으로 바꾸는 편이 좋을 수도 있습니다.
developer.mozilla.org