본문 바로가기

Programing/JavaScript

typeof, Number.isInteger(), isFinite(), isNaN() // 데이터 유형찾기

typeof

출처

 

유형이 뭔지 알려줌

1
2
3
4
5
6
7
8
9
10
11
12
console.log(typeof 42);
// expected output: "number"
 
console.log(typeof 'blubber');
// expected output: "string"
 
console.log(typeof true);
// expected output: "boolean"
 
console.log(typeof declaredButUndefinedVariable);
// expected output: "undefined";
 
cs

 

 

 

Number.isInteger()

출처

정수인지 여부를 판단

 

예제

 

1
2
3
4
5
6
7
8
9
10
11
12
13
function fits(x, y) {
  if (Number.isInteger(y / x)) {
    return 'Fits!';
  }
  return 'Does NOT fit!';
}
 
console.log(fits(510));
// expected output: "Fits!"
 
console.log(fits(511));
// expected output: "Does NOT fit!" 소수점이라서 false
 
cs

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Number.isInteger(0);         // true
Number.isInteger(1);         // true
Number.isInteger(-100000);   // true
Number.isInteger(99999999999999999999999); // true
 
Number.isInteger(0.1);       // false
Number.isInteger(Math.PI);   // false
 
Number.isInteger(NaN);       // false
Number.isInteger(Infinity);  // false
Number.isInteger(-Infinity); // false
Number.isInteger('10');      // false
Number.isInteger(true);      // false
Number.isInteger(false);     // false
Number.isInteger([1]);       // false
cs

 

 

 

isFinite()

출처

 

isFinite() 전역 함수는 전달된 값이 유한수인지를 결정합니다. 필요하다면, 매개변수는 먼저 수치로 변환됩니다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
function div(x) {
  if (isFinite(1000 / x)) {
    return 'Number is NOT Infinity.';
  }
  return "Number is Infinity!";
}
 
console.log(div(0));
// expected output: "Number is Infinity!""
 
console.log(div(1));
// expected output: "Number is NOT Infinity."
 
cs

 

반환값 : 인자가 양 또는 음의 Infinity 또는 NaN이면 false, 다른 경우 true.

 

 

 

 

Number.isNaN()

출처

 

Number.isNaN() 메서드는 전달된 값이 NaN인지 결정합니다. 원래 존재하던 전역 isNaN() 함수의 더 강력한 버전입니다.