강의로 돌아가기
kyounghwan Noh

11번만 틀립니다....

function solution(s) {

var split=s.split('');
var answer = null;
if(split.length==4||split.length==6){
    // answer=true;
    var g=split.join('');
    var a=isNaN(g);
    if(a==true){
        answer=false;
    }else{
        answer=true;
    }
    // console.log(a);

}else{
    answer=false;
}
console.log(answer);
return answer;

}

뭐가 문제인지 확인좀 부탁드릴께요..

작성중인 코드―solution.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
function solution(s) {

    var split=s.split('');
    var answer = null;
    if(split.length==4||split.length==6){
        // answer=true;
        var g=split.join('');
        var a=isNaN(g);
        if(a==true){
            answer=false;
        }else{
            answer=true;
        }
        // console.log(a);

    }else{
        answer=false;
    }
    console.log(answer);
    return answer;
}
1 개의 답변
owo0547

isNaN 은 '123abc' 같은 경우도 true 를 반환합니다.
그래서 틀리는 겁니다.
isNaN 을 쓰지 말고 해당 문자를 ascii 값으로 변환해서 비교하는 방식으로 해야할겁니다.

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.