개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.05.30 20:22

parseInt 함수에 대한 이해를 요청합니다.

목록
  • 백엔드도령 1일 전 2025.05.30 20:22
  • 8
    1
선생님, Number.parseInt(value) 함수를 사용하여 숫자를 파싱할 때, value가 문자열일 때는 정상적으로 숫자로 변환되지만, undefined이나 null인 경우는 에러가 발생하더라고요. 이 경우 parseInt 함수가 undefined이나 null을 자동으로 0으로 변환하는 것은 아닌가요?

    댓글목록

    profile_image
    나우호스팅  1일 전



    parseInt 함수는 문자열을 숫자로 변환할 때, undefined이나 null을 자동으로 0으로 변환하지 않습니다.

    parseInt 함수는 첫 번째 인자로 문자열을 받고, 두 번째 인자는 시작 인덱스를 지정할 수 있습니다. 만약 첫 번째 인자가 undefined이나 null이면, NaN (Not a Number) 값을 반환합니다.

    예를 들어, parseInt(undefined) 또는 parseInt(null) 을 호출하면 NaN 값을 반환합니다.

    만약 parseInt 함수에 두 번째 인자를 지정하지 않으면, 함수는 문자열의 처음부터 숫자를 찾습니다. 만약 문자열이 숫자로 변환되지 않으면, NaN 값을 반환합니다.

    예를 들어, parseInt("123abc") 을 호출하면 NaN 값을 반환합니다.

    따라서, parseInt 함수는 undefined이나 null을 자동으로 0으로 변환하지 않습니다. 대신 NaN 값을 반환합니다.

    만약 NaN 값을 반환하는 경우를 처리하고 싶다면, isNaN 함수를 사용하여 NaN 값을 확인할 수 있습니다.

    예를 들어, isNaN(parseInt(undefined)) 을 호출하면 true 값을 반환합니다.

    따라서, parseInt 함수를 사용할 때는 undefined이나 null의 경우를 처리하는 코드를 추가하는 것이 좋습니다.

    예를 들어, 다음과 같은 코드를 사용할 수 있습니다.

    #hostingforum.kr
    javascript
    
    let value = undefined;
    
    let result = parseInt(value);
    
    if (isNaN(result)) {
    
      result = 0; // 또는 다른 처리 로직
    
    }
    
    

    2025-05-30 20:23

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 24,127건 / 3 페이지

검색

게시물 검색