본문 바로가기

웹개발/javascript

자바스크립트 Number 오브젝트

 

 

 

  자바스크립트의 ES5기반으로 한 기본 개념들입니다.  

공부했던 내용을 정리하는 용도로 오류가 있을 수 있습니다.

재배포 수정하지 마세요. 

 

 

 

 


 

 

 

Number 오브젝트

숫자 처리를 하기 위한 오브젝트로 숫자 처리를 위란 함수와 프로퍼티가 포함되어 있다.

 

 

 

Number( )

console.log (Number("123") + 100);              //223
console.log (Number("AAA"));                    //NaN
console.log (Number(0x11));                     //17
console.log (Number(true));                     //1
console.log (Number(null));                     //0
console.log (Number(undefined));                //undefined
console.log (Number());                         //0

 

파라미터 값을 Number 타입으로 변환시킨다. 파라미터의 값이 문자열이라도 값이 숫자이면 변환이 가능하다. 

파라미터 값을 작성하지 않으면 0을 반환한다. 

 

Number 상수 Constant Number

console.log (Number.MAX_VALUE);                     //1.7976931348623157e+308
console.log (Number.MIN_VALUE);                     //5e-324
console.log (Number.NEGATIVE_INFINITY);             //-Infinity
console.log (Number.POSITIVE_INFINITY);             //Infinity
console.log (Number.NaN);                           //NaN

 

상수는 값을 변경, 삭제할 수 없는 수이다.

영문 대문자를 사용하는 것이 관례이다. 

 

 

new Number( )

var obj1 = new Number("111");
var obj2 = new Number("999");
console.log(obj1);                                  //Number {111}
console.log(obj2);                                  //Number {999}

 

새로운 Number 인스턴스를 생성한다.

 

 

프리미티브 값 Primitive Value

var apple = "red"                                 
var obj = new Number("111");
console.log(obj);                                  //Number {111}
console.log(obj1 + 50);                             //161
console.log(obj1.valueOf());                        //111

 

더 이상 분해할 수 없는 가장 낮은 단계의 값이다. 위에 "red"도 프리미티브 값이다.

Number, String, Boolean 타입은 인스턴스 생성이 가능하다.

Null, undefined 타입은 인스턴스 생성이 불가하다. 

인스턴스를 생성하면 파라미터 값을 인스턴스의 프리미티브 값으로 설정된다. 

valueOf( ) : Number 인스턴스의 프리미티브 값을 반환한다. 

 

 

 

toString( )

var value = 123;
console.log(123 === value.toString());              //false
console.log(123.toString());                        // Syntax Error
console.log(123..toString());                       //123
console.log(123..toString(16));                     //7b

 

데이터를 String 타입으로 변환한다. 

변환할 때 숫자는 실수형으로 적용이 된다. 소수점 아래의 0들은 생략이 되는 개념이기 때문에 소수점의 점(.)과 함수 호출의 점(.)을 구분해서 두 개를 써주어야 오류가 나지 않는다. 

 

 

toLocaleString( )

console.log(111123.33.toLocaleString());               //111,123.33
console.log(111123.33.toLocaleString('de-DE'));        //111.123,33
console.log(111123.33.toLocaleString('bn-IN'));        //১,১১,১২৩.৩৩

 

숫자를 브라우저가 지원하는 지역화 문자로 변환시킨다. 브라우저가 지역화를 지원하지 않으면 toString( )으로 변환한다. 

 

 

toExponential( )

console.log(1234..toExponential());                     //1.234e+3
console.log(1234..toExponential(2));                    //1.23e+3

 

숫자를 지수 표기법으로 변환하여 문자열로 반환한다. 

파라미터에 소수 이하 자릿수를 0 ~ 20까지 작성한다.

변환대상의 첫자리만 소수점(.) 앞에 표시하고 나머지는 소수점 아래 표기한다. 

지수(e+) 다음에 정수에서 소수로 변환된 자릿수를 표시한다. 

 

 

 

toFixed()

console.log(123.456.toFixed(2));                        //123.46
console.log(123.456.toFixed(5));                        //123.45600

 

고정 소숫점 표기로 변환하여 문자열로 반환한다.

파라미터에 소수 이하 자릿수를 0 ~ 20까지 작성한다. 

파라미터 값보다 소수 자릿수가 길면 작성한 자릿수에 1을 더한 위치에서 반올림한다.

변환 대상 자릿수보다 파라미터 값이 크면 나머지를 0으로 채워서 반환한다.