관리 메뉴

진취적 삶

28 Number 본문

개발 도서/자바스크립트 deepdive

28 Number

hp0724 2023. 7. 12. 11:40

28.1 Nubmer 생성자 함수

number 객체는 생성자 함수 객체다 .따라서 new 연산자와 함께 호출하여 Number 인스턴스를 생성할수 있다.

const numObj = new Number();
console.log(numObj); //Number [PrimitiveValue]:0

PrimitiveValue 접근할수 없는 프로퍼티 이는 [[NumberData] 내부슬롯을 가리킨다

new 연산자를 사용하지 않고 Number 생성자 함수를 호출하면 Number 인스턴스가 아닌 숫자를 반환한다 .

28.2 Number 프로퍼티

28.2.2 Number.MAX_VALUE

console.log(Number.MAX_VALUE); //1.7976931348623157e+308
console.log(Infinity > Number.MAX_VALUE); //true

28.2.3 Number.MIN_VALUE

console.log(Number.MIN_VALUE); //5e-324
console.log(Number.MIN_VALUE > 0); //true

28.2.4 Number.MAX_SAFE_INTEGER

JS 안전한게 표현할수 있는 가장 큰 정수값

console.log(Number.MAX_SAFE_INTEGER); //9007199254740991

28.2.5 Number.MIN_SAFE_INTEGER

JS 안전한게 표현할수 있는 가장 작은 정수값

console.log(Number.MIN_SAFE_INTEGER); //-9007199254740991

28.2.6 Number.POSITIVE_INFINITY

console.log(Number.POSITIVE_INFINITY);//INFINITY

28.2.7 Number.NEGATIVE_INFINITY

console.log(Number.NEGATIVE_INFINITY)// -INFINITY 

28.3 Number 메서드

28.3.1 Number.isFinite

정적 메서드 인수로 전달된 숫자값이 정상적인 유한수 인지 확인해서 불리언값으로 반환

28.3.2 Number.isInteger

인수로 전달된 숫자값이 정수인지 검사해서 불리언으로 반환

28.3.3 Number.isNaN

인수로 전달된 숫자값이 NaN인지 검사하여 불리언으로 반환

암묵적 타입 변환하지 않는다 . 숫자가 아닌 인수가 주어지면 반환값은 언제나 FALSE

빌트인 전역함수 isNaN의 경우 암묵적 타입변환함

28.3.4 Number.isSafeInteger

인수로 전달된 숫자값이 안전한 정수인지 검사하여 불리언 값으로 반환

28.3.5 Number.prototype.toExponential

지수 표기법으로 변환하여 문자열로 반환한다. 인수로 소수점 이하로 표현할 자릿수 전달 가능

function printExponential(val, index) {
  console.log(val.toExponential(index));
}

printExponential(77.1234);
printExponential(77.1234, 4);
printExponential(77.1234, 2);

숫자리터럴과 함께 사용할경우 . 의미가 부동 소수점인지 객체 프로퍼티 접근 연산자인지 모호하기 때문에 그룹연산자를 사용할것을 권장

28.3.6 Number.prototype.toFixed

숫자를 반올림하여 반환한다.

console.log((1234.6789).toFixed(0)); //1235
console.log((1234.6789).toFixed(1)); //1234.7
console.log((1234.6789).toFixed(2)); //1234.68
console.log((1234.6789).toFixed(3)); //1234.679

28.3.8 Number.prototype.toString

숫자를 문자열로 변환하여 반환 진법을 나타내는 2~36 사이의 정수값을 인수로 전달할수 있다.

console.log((10).toString()); //10
console.log((10).toString(2)); //1010
console.log((10).toString(8)); //12

'개발 도서 > 자바스크립트 deepdive' 카테고리의 다른 글

26 ES6 함수의 추가기능  (0) 2023.07.12
27 배열  (0) 2023.07.12
29 Math  (0) 2023.07.12
30 Date  (0) 2023.07.12
21 빌트인 객체  (0) 2023.07.12