return 과 소수점

hayden·2022년 12월 20일
0
function 함수(){
	return 100;
    var x = 123
}

이러한 경우엔 return 아래부분은 실행되지 않는다.
왜냐면 return 은 종료의 의미도 있기때문.

1.1 더하기 0.1 은 1.2 가 아니다?

깔끔하게 떨어지는 소수는 상관이 없다

그러나 깔끔하게 안떨어지는 소수는

잘라버린다

그래서 오차가 생김

이 오차로 사람이 죽은 예도 있다.

그럼 어떻게하나?

1. 정수를 사용

float 를 사용하지 않고 정수를 사용한다

예) 5.1 달러는 5100 센트로

2. 반올림 문법

자바스크립트의 경우

var num = (a*1.1).toFixed(1);
return num

이렇게 하면 소수 첫째자리수 (1) 까지 반올림되어
예) 1.26 -> 1.3 으로
.toFixed(2) 로하면 둘째자리수 까지 반올되어
예) 1.267 -> 1.27 이된다

* 자바스크립트의 문자 + 숫자 문제

자바스크립트는 문자와 숫자를 더하면
'1'+1=11 이렇게 되어버린다
이런현상이 위에서도 발생한다면

return parseFloat(num)
return parseInt(num)

등으로 해결 가능한듯

3. double 을 사용

더블을 사용하면 64비트 로 저장공간이 늘어나서
오차가 적어짐

참고
https://youtu.be/-GsrYvZoAdA

profile
22.12.01 코딩공부기록저장소

0개의 댓글