function 함수(){
return 100;
var x = 123
}
이러한 경우엔 return 아래부분은 실행되지 않는다.
왜냐면 return 은 종료의 의미도 있기때문.
1.1 더하기 0.1 은 1.2 가 아니다?
깔끔하게 떨어지는 소수는 상관이 없다
그러나 깔끔하게 안떨어지는 소수는
잘라버린다
그래서 오차가 생김
이 오차로 사람이 죽은 예도 있다.
그럼 어떻게하나?
float
를 사용하지 않고 정수를 사용한다
예) 5.1 달러는 5100 센트로
자바스크립트의 경우
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)
등으로 해결 가능한듯
더블을 사용하면 64비트 로 저장공간이 늘어나서
오차가 적어짐