JS Nubmer

Updated:

JavaScript Numbers

자바 스크립트는 숫자의 한 유형이 있습니다. 숫자 또는 소수없이 작성 할 수 있습니다.

var x = 3.14;    // A number with decimals
var y = 3;       // A number without decimals

매우 크거나 작은숫자는 지수표기법으로 쓸 수 있다.

var x = 123e5;    // 12300000
var y = 123e-5;   // 0.00123

생략

1.NaN (Not a Number)

NaN 숫자가 아닌 것을 나타내는 자바 스크립트 예약어입니다.

var x = 100 / "Apple"; // x will be NaN (Not a Number)

문자열이 숫자 값을 포함하는 경우 , 결과는 숫자일 수 있다

var x = 100 / "10"; // x will be 10

2. isNaN

var x = 100 / "Apple";
isNaN(x);               // returns true because x is Not a Number

주의할점은 만약 NaN을 수학연산에 사용하는경우 결과는 NaN 일 수 있고,

var x = NaN;
var y = 5;
var z = x + y;         // z will be NaN

또한 결과는 연결될 수 있을 것 이다

var x = NaN;
var y = "5";
var z = x + y;         // z will be NaN5

Nan은 숫자이고 typeof NaNnumber를 반환

typeof NaN;            // returns "number"

3. Infinity

Infinity(-Infinity)는 가장 큰 가능한 숫자 이외의 수를 계산하는 경우 자바 스크립트의 반환 값입니다.

ex1)

var myNumber = 2;
while (myNumber != Infinity) {   // Execute until Infinity
  myNumber = myNumber * myNumber;
}

0으로 나누어도 Infinity다.

var x =  2 / 0;       // x will be Infinity
var y = -2 / 0;       // y will be -Infinity

Infinity의 typeof는 Nubmer입니다.

typeof Infinity;     // returns "number"

4. Numbers Can be Objects (숫자는 객체가 될 수 있다.)

일반적으로 자바 스크립트 번호는 리터럴에서 생성 된 원시 값은 다음과 같습니다

var x = 123;

그러나 숫자는 키워드와 객체로 정의 할 수 있습니다 new:

var y = new Number(123);

var x = 123;
var y = new Number(123);

// typeof x returns number
// typeof y returns object

하지만 number객체를 사용할시 속도가 느려지고 코드가 복잡해질수있다.

== 사용시 true리턴

var x = 500;             
var y = new Number(500);

// (x == y) is true because x and y have equal values

=== 사용시 값과 타입을 모두비교하기때문에 false 리턴

var x = 500;             
var y = new Number(500);

// (x === y) is false because x and y have different types

또는 오브젝트끼리는 서로 비교할수 없다

var x = new Number(500);             
var y = new Number(500);

// (x == y) is false because objects cannot be compared

Tags:

Categories:

Updated:

Leave a comment