[JavaScript] 리트코드 - #8 String to Integer (atoi) (Medium)

배똥회장·2022년 11월 17일
0

📝 문제

리트코드 - #8 String to Integer (atoi) (Medium)


📝 답안

📌 작성 코드

var myAtoi = function(s) {
    let min = Math.pow(2, 31) * (-1);
    let max = Math.pow(2, 31) - 1;

    let number = "0";
    let index = 0;
    let sign = "+";
    while (s.charAt(index) == ' ') { index++; }

    if (s.length > index && (s.charAt(index) == '-' || s.charAt(index) == '+')) {
        sign = s.charAt(index);
        index++;
    }

    while (s.length > index && s.charAt(index) >= '0' && s.charAt(index) <= '9') {
        number += s.charAt(index);
        index++;
    }

    number = parseInt(number) * (sign == '+' ? 1 : -1);
    
    if (min > number) {
        return min;
    } else if (max < number) {
        return max;
    } else {
        return number;
    }
};

📌 결과


📌 주의사항

일단 공백을 전부 없애고

+나 - 문자가 나오는지 확인
(한 번 나왔는데 또 나오면 종료) => ex) test case : +-12 => answer: 0

그 다음 숫자가 오는지 확인
(만약 영문자나 .이 온다면 종료)

ex)
test case : .2 => answer: 0
test case : word 2 => answer: 0

profile
어쩌면 개발자

0개의 댓글