개발자 Q&A

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

2025.03.09 05:04

parseInt(string, radix) 방법을 사용하여 16진수 문자열을 10진수로 변환하는 방법에 대해 도움을 요청합니다.

목록
  • 앱스토어장인 13일 전 2025.03.09 05:04
  • 7
    1
제가 사용한 코드는 다음과 같습니다.

javascript

console.log(parseInt('A', 16)); // 결과는 10

console.log(parseInt('10', 16)); // 결과는 16



제가 이해한 바는 radix가 16인 경우, 'A'가 10, 'F'가 15, '0'이상 '9'이하의 숫자는 그대로 10진수로 변환되며, 'A'가 아닌 다른 문자열이 들어오면 NaN이 출력됩니다.

하지만, 제게 알려주신 예시에서는 'A'가 10으로 변환된 것이 이해가 가지 않습니다.

radix가 16인 경우 'A'는 10, 'B'는 11, 'C'는 12, 'D'는 13, 'E'는 14, 'F'는 15로 변환되어야 하는 것이 맞는데, 'A'가 10으로 변환되는 것은 이해가 가지 않습니다.

해결 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  13일 전



    parseInt 메서드는 문자열을 숫자로 변환할 때, radix(기수) 매개변수를 사용합니다. radix가 16인 경우, 16진수 문자열을 10진수로 변환합니다.

    16진수 문자열에서 'A'부터 'F'까지는 10부터 15까지의 숫자로 변환됩니다. 예를 들어, 'A'는 10, 'B'는 11, 'C'는 12, 'D'는 13, 'E'는 14, 'F'는 15로 변환됩니다.

    이러한 이유로, 'A'가 10으로 변환되는 것은 정상적인 결과입니다.

    만약, 'A'가 아닌 다른 문자열이 들어오면 NaN(Not a Number)이 출력됩니다.

    예를 들어, 'G'는 16진수 문자열이 아니므로 NaN이 출력됩니다.

    따라서, radix가 16인 경우 'A'부터 'F'까지는 10부터 15까지의 숫자로 변환됩니다.

    2025-03-09 05:05

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

검색

게시물 검색