Number 객체의 특정 프로퍼티, 메소드를 찾으시는 분은 Ctrl + F로 검색
Number 객체는 숫자 데이터를 처리하기 위한 내장 객체 입니다.
1. Number 객체의 프로퍼티
Number 객체의 프로퍼티는 모두 정적 프로퍼티입니다. 정적 프로퍼티/메소드에 대한 설명은 아래를 참조해주세요.
2021/03/03 - [Programming/Javascript] - [Javascript] 정적 프로퍼티와 정적 메소드
1. NaN (Not a Number)
NaN
//정적 프로퍼티이므로 실제 접근은 아래와 같이합니다.
Number.NaN
NaN은 Not a Number의 줄임말입니다. 말그대로 숫자가 아닌 값을 의미합니다. Null과 undefined와는 다릅니다.
NaN은 숫자가 아니며 모든 값과 같이 않기 때문에 NaN === NaN이란 식은 false입니다.
2. MAX_VALUE, MIN_VALUE
MAX_VALUE
MIN_VALUE
Number 객체로 표현이 가능한 최대/최소값을 출력합니다.
3. MAX_SAFE_INTEGER, MIN_SAFE_INTEGER
MAX_SAFE_INTEGER
MIN_SAFE_INTEGER
Number 객체로 안전하게 표현이 가능한 최대/최소 정수값 입니다.
4. NEGATIVE_INFINITY, POSITIVE_INFINITY
NEGATIVE_INFINITY
POSITIVE_INFINITY
각각 음수/양수의 무한대를 표시합니다.
5. EPSILON
EPSILON
1과 Number로 표현 가능한 1보다 큰 최소 값과의 차. 다음과 같은 값이 나온다고 합니다.
console.log(Number.EPSILON);
2. Number의 메소드
1. toString()
toString(n);
toString()메소드는 인수(n)로 넘겨진 진수의 값으로 변환됩니다. 인수는 2~36까지 넘겨질 수 있습니다.
let num = 10; //10진수 10
console.log(num.toString(2)); //2진수로 변환
console.log(num.toString(8)); //8진수로 변환
console.log(num.toString(16)); //16진수로 변환
2. toExponential()
toExponential(n);
숫자를 지수표현으로 변경합니다. 인수 n은 소수점 이하 자릿 수입니다.
let num = 10;
console.log(num.toExponential(5));
3. toFixed()
toFixed(n);
반올림을 하는 메소드입니다. 인수 n번째 이하의 소숫점 자릿수를 반올림합니다.
let num = 1.23456;
console.log(num.toFixed(3));
console.log(num.toFixed(4));
4. toPrecision()
toPrecision(n);
숫자를 소수점이하 n자리 수로 변경해줍니다. 자릿수가 더 적으면 버림하고 더 많으면 빈 자리를 0으로 채워서 표시합니다.
let num = 1.2345;
console.log(num.toPrecision(3));
console.log(num.toPrecision(7));
※ 이하의 메소드들은 모두 정적 메소드입니다.
5. isNaN()
isNaN(n);
n의 숫자가 NaN인지를 판별합니다. NaN은 숫자가 아닌 값을 의미합니다. NaN이면 true, NaN이 아니면 false를 반환합니다.
isNaN()은 사용에 있어서 살짝 주의를 요합니다. 다음 네 개의 케이스를 보여드립니다.
console.log(isNaN('10'));
console.log(isNaN('3a'));
console.log(isNaN(''));
console.log(isNaN(' '));
문자열이 입력되면 따옴표를 제거합니다. 따옴표를 제거한 문자가 숫자로만 이루어져있다면 숫자로 판별하여 false를 반환, 따옴표가 제거된 문자열에 숫자 이외의 값이 존재하면 NaN으로 판별하여 true를 반환합니다.
또한 빈 문자열과 공백은 숫자 0으로 인식됩니다.
6. isFinte(), isInteger(), isSafeInterger()
isFinite(n);
isInteger(n);
isSafeInteger(n);
isFinite()는 n의 수가 유한값인지 판별합니다.
isInteger()와 isSafeInteger()는 정수 값인지 판별을 합니다. isSafeInteger()는 정수 값이며 안전하게 표현할 수 있는 정수 값인지도 함께 판별합니다.
7. parseInt(), parseFloat()
parseInt(str, [rad]);
parseFloat(str);
parseInt()는 문자열 str을 정수로 변환합니다. 이때 인수 rad는 입력된 str이 몇진수인지 알려주는 용도입니다. (만약 str이 '3a45f'와 같은형태라면 parseInt(str, 16);처럼요.) 이 rad인수를 생략했을때 기본값은 10진수가 아님에 주의해야합니다.
parseFloat()는 문자열 str을 실수형으로 변환합니다.
let num = '10';
console.log(parseInt(num));
console.log(parseInt(num, 10)); //num은 10진수다. 결과:10
console.log(parseInt(num, 2)); //num은 2진수다. 결과:2
console.log(parseFloat(num));
다음과 같이 문자열에 숫자와 문자 등이 섞여있을 경우에는 처음부터 숫자로 인식되는 부분만 잘라서 가져옵니다.
let str = '421hi89xz';
console.log(parseInt(str));
'Programming > Javascript' 카테고리의 다른 글
[Javascript] 내장 객체 - Array (0) | 2021.03.09 |
---|---|
[Javascript] 내장 객체 - Math (0) | 2021.03.08 |
[Javascript] 내장 객체 - String 객체 2 (0) | 2021.03.03 |
[Javascript] 내장 객체 - String 객체 1 (0) | 2021.03.03 |
[Javascript] 정적 프로퍼티와 정적 메소드 (0) | 2021.03.03 |
댓글