[JS] Number 오브젝트
by Roel Downey오브젝트 (Number)
- 숫자(123) 처리를 위한 오브젝트
- 즉, Number 오브젝트에 숫자 처리를 위한 함수와 프로퍼티가 포함되어 있으며 함수를 호출하여 숫자 처리를 하게 된다.
프로퍼티 리스트
- new Number() : 인스턴스 생성
Number 함수
- Number() : 숫자 값으로 변환하여 반환
Number.prototype
- constructor : 생성자
- toString() : 숫자 값을 문자열로 변환
- toLocaleString() : 숫자 값을 지역화 문자로 변환
- valueOf() : 프리미티브 값 반환
- toExponential() : 지수 표기로 변환
- toFixed() : 고정 소수점 표기로 변환
- toPrecision() : 고정 소수점 또는 지수 표기로 변환
Number()
- 파라미터 값을 Number 타입으로 변환
- 파라미터 값을 작성하지 않으면 0을 반환
파라미터 값이 String 타입이라도 값이 숫자이면 변환 가능
예)
console.log(Number("123")+500);
console.log(Number("ABC"));
실행 결과 )
623
NaN
숫자로 변환 할 수 있으면 변환
예)
console.log(Number(0x14));
console.log(Number(true));
console.log(Number(null));
console.log(Number(undefined));
실행 결과 )
20
1
0
NaN
설명 )
- 16진수는 10진수로 변환
- true는 1로 , false는 0으로 변환
- null은 0으로 변환
- undefined는 NaN로 변환
Number 상수
- Number.MAX_VALUE : 1.7976931348623157 * 10(308승)
- Number.MIN_VALUE : 5 * 10 (-324승)
- Number.NaN : Not-a-Number
- Number.POSITIVE_INFINITY : infinity
- Number.NEGATIVE_INFINITY : -infinity
- 상수는 값을 변경, 삭제 할 수 없음
- 영문 대문자 사용이 관례
- Number.MAX_VALUE 형태로 값 사용
New 연산자
- 오브젝트로 인스턴스를 생성하여 반환
- 원본을 복사하는 개념
new 연산자를 사용하면 인스턴스
예)
var obj = new Number();
console.log(typeof(obj));
실행 결과 )
object
- 인스턴스 생성 목적
인스턴스마다 값을 가지기 위한것
예)
var oneObj = new Number("123");
console.log(oneObj.valueOf());
var twoObj = new Number("456");
console.log(twoObj.valueOf());
실행 결과 )
123
456
프리미티브 값
- Primitive Value : 언어에 있어 가장 낮은 단계의 값
프리미티브 타입
- Number, String, Boolean : 인스턴스 생성 가능
- Null, Undefined : 인스턴스 생성 불가
- Object는 프리미티브 값을 제공하지 않음
인스턴스의 프리미티브 값
- var obj = new Number(123);
인스턴스를 생성하면 파라미터 값을 인스턴스의 프리미티브 값으로 설정
- 프리미티브 값을 갖는 오브젝트 : Boolean, Date, Number, String
프리미티브 값 반환
예)
var obj = new Number(123);
console.log(obj + 200);
실행 결과 )
323
toString()
data를 String 타입으로 변환
예)
var value = 20;
console.log(20 === value.toString());
console.log(value.toString(16));
실행 결과 )
false
14
설명)
1. 20 === value.toString() 의 결과는 false , 20을 String 타입으로 변환하기 때문에
2. value.toString(16) 20을 16진수로 변환하며 값은 14
변환할 때 주의 사항 : 유동 소수점 사용
예)
console.log(20..toString());
실행 결과 )
20
설명)
20.toString() 형태로 작성하면 에러가 난다.
20이 아니라 20.을 변환 대상으로 인식하므로 점(.)이 없는 valuetoString() 형태가 되기 때문에 20..을 작성한다.
'Web > JavaScript' 카테고리의 다른 글
[JS] Object 오브젝트 (0) | 2022.01.17 |
---|---|
[JS] String 오브젝트 (0) | 2022.01.13 |
[JS] 오브젝트(Object) (0) | 2022.01.04 |
[JS] 함수(Function) (0) | 2022.01.03 |
[JS] 문장(Statement) (0) | 2022.01.03 |
블로그의 정보
What doing?
Roel Downey