let a = 0.1
let b = 0.2
a+b = 0.30000000000000...4 로 뜸.
이유 : 10진수서 2진수로 항상 변화해주는데 (js엔진이) 소수같은 경우는 무한소수가 2진법으로 변경할때 무한 소수가 된다고 한다(이유는 모름..)
해결 : 따라서 .toFixed() 메서드를 쓰거나..(요건 변수화 시켜서 사용해야 함 계산식에는 못쓰더라.. 파라미터는 1 넣으면 소수 1자리까지 표현해라는 뜻..)
또는 Math.round() : 정수로 반올림 하는 함수 사용해도 됨
Math.round((a+b) * 10) / 10
하면 되는데, Math.round((a+b) 10) 해주면 (0.1 + 0.2) 10 = 3.0000...4 가 나오는데, 여기서 Math.round()로 반올림 해주면 3만
남게 되는 원리다.
toFixed()는 주의사항이 string이 return 되므로 Number로 숫자 변환이 필요하다. round가 더 편할듯
참고 블로그 : https://bigtop.tistory.com/47