일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 조건부스타일
- ㅡ
- react
- tailwindCSS
- QueryClient
- BlockFormattingContext
- parent padding
- accordian
- createPortal
- ?? #null병합연산자
- 함수형프로그래밍
- 리액트
- 부모요소의 패딩 무시
- es6
- 문제해결
- 화살표2개
- DOM
- twoarrow
- debouncing
- BFC
- ignore padding
- CustomHook
- 부모패딩
- alias설정
- useQueryClient
- transition
- 제어컴포넌트
- Carousel
- 서초구보건소 #무료CPR교육
- vite
Archives
- Today
- Total
프론트엔드 첫걸음
0.1 + 0.2 !== 0.3 는 true 본문
https://www.youtube.com/watch?v=ZQDsWySjY6g
아 웃겨 눈물났네 ㅋㅋ
컴퓨터는 이진법으로 숫자를 처리하는데, 이 방식으로는 모든 숫자를 정확하게 표현하지 못한다.
1/3 이를 십진법으로 나타내면 0.3333333333333333333...으로 나타내나 끝없이 나타낼수없으며, 이를 끊어서 쓰는 순간 오차가 생김
이처럼 이진법도 오차가 나옴.
이진법에서는 0.1이 무한소수가 됨.
컴퓨터는 메모리를 가장 효율적으로 활용할 수 있는 방식으로 데이터를 저장한다.
프로그래밍에서 사용되는 숫자자료형으로 대표적으로 int가 있고, 자바에서는 작은 범위의 숫자를 나타내기 위해 byte를 사용한다.
두번째로 자바의 float, 자바스크립트의 number가 있다.
부동소수점 = floating point 소수점이 떠서 움직인다는 뜻.
실수를 표현하기 위해 32비트의 절반을 각각 정수와 소수에 할당하는 고정소수점 방식은 정수 및 소수부분을 각각 유연하게 나타내기 어렵다. 비트가 효율적으로 쓰이지 못한다.
부동소수점 방식은 모든 숫자를 1.XXXX 방식으로 표현한다.
음수인지 양수인지 / 소수점이 몇칸 움직일지 / 소수점 뒤로 오는 부분
효율적으로 다양한 숫자 표현가능 = IEEE754표준
오차 없는 계산이 필요할 때는
Java에서는 bigDecimal, javascript는 'big.js', python에서는 decimal 사용하면 된다.