일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
31 |
Tags
- mcpserver
- CRUD
- llm연동
- rest api
- 자바스크립트
- 깃허브
- spring
- SpringBoot
- 백엔드개발
- restful
- springframework
- CI/CD
- 스프링부트
- 자바스크립트기초
- SQLD
- gitflow
- 모던 자바스크립트
- Nan
- github
- selenium
- 개발자튜토리얼
- 브랜치관리전략
- mcp
- modelcontextprotocol
- 회원관리
- 깃플로우
- springboot크롤링
- 네이버 크롤링
- springboot 크롤링
- Github action
Archives
- Today
- Total
JUNEee
[JavaScript] 자바스크립트 Number 자료형 본문
반응형
Number 의 특징
- 자바스크립트에서는 숫자 자료형이 매우 넒은 부분을 포함한다.
일반적으로 java 와 같이 타입이 고정되어있는 언어의 경우 숫자형 타입으로
- int
- long
- byte
- short
등이 존재하는 반면 자바스크립트의 경우 이러한 숫자의 형태와 상관 없이 모든 형태를 허용하게 된다.
아래 예제를 보면 let 으로 선언된 result라는 변수에 정수형, 실수형, 2진수값, 16진수값 등 여러 숫자형 타입이 들어갈 수 있으며, 모두 10진수로 변환되어 출력됨을 알 수 있다.
let result = 3
console.log(result); //3
//
result = 3.14
console.log(result); //3.14
//
result = 0b0011;
console.log(result); //3
//
result = 0x3
console.log(result); //3
.
.
.
숫자형의 특수한 상태를 표현하는 Infinity / NaN
- 숫자의 형태에는 무한대이거나 또는 허용되지 않는 값도 존재할 수 있다. 이것들을 각각 Infinity, NaN 이라고 표현하게 되는데
[Infinity] : 단어 뜻 그대로 무한대의 수를 의미하게 된다.
아래 예제를 참고해보자
예제에서는 result에 3을 0으로 나눈 값을 대입하고 있으며 3을 0으로 나눈 값은 무한대이므로 해당 변수의 값을 출력해보면 Infinity 가 출력됨을 알 수 있다.let result = 3 / 0 console.log(result); //Infinity
[NaN(Not a Number)] : 숫자가 아닌 값을 의미한다.
아래 예제를 참고해보자
3을 숫자 10이 아닌 문자 "십"으로 나누었다. 숫자를 문자로 나누었을 때 이는 수학적으로 정의되지 않은 연산이므로 NaN이 반환된다.let result = 3 / "십"; console.log(result); //NaN
- 음의 무한대 -Infinity
만약 3이 아닌 -3 음수를 나누게 되면 결과값은 음의 무한대가 나온다.let result = -3 / 0; console.log(result); // -Infinity
- NaN 은 자기 자신과도 같지 않다.
result에 NaN 을 대입하였다 이후 result 값과 NaN을 비교 연산하였고 결과는 false 즉 NaN 은 그 자체로 유일한 값이다.
따라서 result의 값이 NaN인지를 확인해야할 경우 Number.isNaN(result) 을 사용하는것이 적절하다.let result = NaN; console.log(result === NaN); // false console.log(result == NaN); // false // NaN 확인하는 방법 console.log(Number.isNaN(result)); // true
반응형
'FE > 자바스크립트' 카테고리의 다른 글
[JavaScript] 자바스크립트 프로토타입 이해하기! (0) | 2025.06.03 |
---|---|
[JavaScript] 변수의 선언 및 특징 (3) | 2025.05.21 |