ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JavaScript 입문 : 기본기 (숫자열 표시, parseInt, parseFloat, Number)
    컴퓨터 알아가기/JavaScript 2021. 10. 25. 19:30
    728x90
    반응형

    본 내용은 제로초 TV의 자바스크립트 강좌를 기본으로 공부한 내역을 정리한 글입니다. 

     

     

     

    이제는 숫자를 표시하거나 연산되는 내용에 대해 좀 더 알아 보도록 하겠습니다. 

     

    ▒ 숫자 표시

     

    숫자를 표시할 때 정수이외 소수점이나 마이너스 등 다양하게 표시하는데 자바스크립트상에 그대로 표시하면 됩니다. 다음을 참조하면 이해가 쉽습니다. (우리가 쉽게 이해할 수 있는 십진법을 기준으로 한번 보겠습니다.)

     

     

    위 그림을 조금 설명을 하면 다음과 같습니다. 

     

    "기본적인 숫자 표시는 같다. 특히, 단위가 큰 경우 예를 들어 10,000인 경우 이는 1 곱하기 10의4제곱이기 때문에 지수(Exponent)를 사용하여 1e4로 나타낸다. 같은 원리로 소숫점 이하로 나타낼 경우 예를 들어 0.0005은 5 곱하기 10의 -4제곱이므로 5e-4로 나타낸다."

     

    이외 2진법, 8진법, 16진법의 숫자표기 방법이 있습니디만 우선 머리가 아프니 십진법을 기준으로 가보다가 정말 필요할 경우 별도로 공부하는편이 나을 것 같습니다. 

     

    ☞ NaN

     

    지난 시간 '축구' - '야구'를 하니 에러가 나지 않고 NaN으로 표시 되었습니다. 이는 Not a Number의 약자로 숫자가 아니다라는 의미입니다. 그런데 숫자가 아니면 문자인가라는 의문이 생겨 자료형을 확인하는 typeof를 사용해 보면 다음과 같이 나옵니다. 

     

     

    자료형은 숫자열로 나옵니다. 하지만 우리가 부르는 숫자(Number)는 아닙니다. 문자열의 연산을 통해 나온 결과값으로 숫자는 아니지만 연산이 이루어졌으니 숫자열로 분류가 되는 것으로 이해하면 되겠습니다. (무엇이든지 그냥 외우면 내 것이 되지 않습니다. 최초 만든이의 생각까지 같이하면 오래갈 것 같습니다.)

     

     


     

    ▒ parseInt, parseFloat, Number

     

    자바스크립트를 사용할 때 문자열과 숫자열의 구분을 잘 해야합니다. 사람의 눈으로 보았을때 1234는 숫자로 인식합니다만 컴퓨터는 따옴표를 붙혀주면 그 안에 들어가는 내용은 문자열로 인식합니다. 

     

    예를들어  1234 + 5 를 계산하여 1239라는 결과값을 내고자하면 1234와 5는 전부 숫자열이어야 합니다. 하지만 '1234' + 5를 하게되면 결과값은 문자열로 "12345"로 나옵니다. 아래 그림을 참조하세요.

     

     

    그렇다면 문자열을 숫자열로 바꾸어서 원하는 연산이 가능하게 만드는 명령어parseInt입니다. 다음과 같이 사용하면 됩니다. 

     

     

    원하는 결과값인 1239를 얻을 수 있습니다. 여기서 parse는 분석하다, 분해하다라는 뜻이고 Int는 Integer(정수)의 약자입니다.  그럼 참고하고 있는 강의보다 더 다양한 내용을 해봐야 이해가 쉬울 듯 합니다. 다음을 참조하시고 각각의 뜻을 보도록 하겠습니다. 

     

     

     

    ① '-10'은 문자열입니다. 그래서 '-10' + 1을 하면 '-101'로 문자열로 합쳐집니다. 

    ② 계산을 위해서는 문자열을 숫자열로 바꾸어주는 parseInt를 사용하면 -9로 계산이 됩니다.

    ③ 그런데 소수점 '0.1'문자열을 숫자열로 바꾸어 줄때 parseInt를 사용하니 0이 나옵니다.

        이는 정수형으로 바꾸는 명령어이기때문입니다. 그래서 parseInt('0.1') + 0.1 = 0 + 0.1로 답이 0.1이 나옵니다. 

        이럴경우 소수점을 포함하는 정수형이 아닌 실수형으로 바꾸어주면 됩니다. 실수는 영어로 float입니다. 다음을 참조하세요.

     

     

     

    parseInt, parseFloat 둘다 귀찮다 또는 헷갈린다하면 앞에 Number를 붙히면 같은 원리로 작용이 됩니다. 

     

     

    천천히 천천히 이번에는 꼭 정보해 보시죠!

    반응형

    댓글

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
Designed by Tistory.