[JavaScript] 5. 연산자 우선순위, 소수계산 주의점

Eden·2022년 9월 11일
0

Javascript

목록 보기
23/33
post-thumbnail

5. 연산자 우선순위, 소수계산 주의점

수학 연산자 우선순위처럼 생각해주세요!

더하기보다 곱하기가, 곱하기보다 () 가 우선순위가 더 높아요!

(2 + 3) * 4;
>20

다만, 자바스크립트에서 중괄호 {} 나 대괄호 [] 가 수학과는 다른 의미이기 때문에 연산자 우선순위를 바꿀 때는 사용하지 않아요 ! 소괄호 ()이용바람다

*1분 퀴즈

연산자 우선순위 표를 참고해 3 ** 2 + 1을 27로 만들어보세요.

3 ** (2 + 1); //3 ** 3
>27

실수 계산 시 주의할 점

자바스크립트로 정수 뿐만 아니라 실수도 계산할 수 있다.

0.5 + 0.5;
>1

하지만, 실수 연산을 할 때는 조심할 점이 있다. 0.1과 0.2를 더하면 어떤 값이 나올까?

당연히 0.3이라고 생각했다.

0.1 + 0.2;
>0.300000000000004

0.3 - 0.1;
>0.199999999999998;

왜 그럴까? 컴퓨터는 0과 1밖에 몰라서 이진법으로 계산하기 때문이다… 이진법으로 계산하기 어려운 숫자들은 미세하게 값이 달라질 수 있다. *부동 소수점 계산

해결하기 위해선,

(0.3 * 10 - 0.1 * 10) / 10;
>0.2

정수로 만들어준다음에 계산하면 거의 오류가 발생하지 않는다.

profile
one part.

0개의 댓글