[JavaScript] 자바스크립트에서 숫자 다루기

2021. 5. 5. 04:27Program/JavaScript

020 _ 자바스크립트에서 숫자 다루기

[적용]

  • 자바스크립트에서 수를 계산하고 싶을 때

[내용]

숫자는 자바스크립트의 기본 데이터 타입 중의 하나로 정수와 소수(실수)를 사용하며,

타입은 Number이다.

const a = 10;  // 결과: 10
const b = 1.23;  //  결과: 1.23
const c = -5;  // 결과: -5

[수의계산]

수의 계산으로 다음과 같은 작업이 가능하다.

작업 예시
수학 계산하기 10의 2승 계산하기
어림 계산하기 세금을 포함한 금액을 정수로 산출하기
삼각 함수 다루기 애니메이션의 궤적 구하기
임의의 수(random) 다루기 애니메이션에 임의 값(움직임) 부여하기

[진수의 표현]

자바스크립트에서는 10진수 외에도, 2진수, 8진수, 16진수 등의 표현이 가능하다.

표기 예 의미
10, 240, 12400, 3.14 10진수
0b111, 0b0101010 2진수
0o123, 0o7777 8진수
0xFF0000, 0xCCCCCC 16진수

 


[수 표현의 제한]

수학적으로 수의 크기 자체는 무한대까지 정의가 가능하지만,

자바스크립트에서는 수의 표현이 제한된다.

정수 의미
Number.MAX_VALUE 최대 정수값 1.7976931348623157e+308
Number.MIN_VALUE 최소 정수값 5e-324
Number.MAX_SAFE_INTEGER 다룰 수 있는 최대 정수값 9007199254740991
Number.MIN_SAFE_INTEGER 다룰 수 있는 최소 정수값 -9007199254740991

Number.MIN_SAFE_INTEGER와 Number.MAX_SAFE_INTEGER의 사이를 벗어나는 값은 계산 결과에 오차가 발생한다.


[Appendix]

부정확한 계산 결과에 따라 반환되는 특별한 값

수의 계산에는 부정확한 계산 결과에 따라 반환되는 특별한 값이 있다.직접 사용할 일은 거의 없으나, 에러가 발생할 때 접하는 경우가 있으니 확인해 두자.

정수 의미
NaN 숫자가 아닌 값 혹은 부적확한 계산 결과 NaN
Number.POSITIVE_INFINITY 양의 무한값 Infinity
Number.NEGATIVE_INFINITY 음의 무한값 -Infinity

 

 

 

 

출처 :
실무에 바로 적용하는 자바스크립트 코드레시피 278
아케다 야스노부, 카노 타케시 지음 / 이춘혁 옮김