Number/Math Methods

1. Number.isInteger(value)

  • argument : 정수인지 판단할 값
  • return value : 판단결과(boolean)
Number.isInteger(1); // => true
Number.isInteger(-1); // => true
Number.isInteger(3.14); // => false
Number.isInteger("string"); // false
Number.isInteger([1, 3, 5]); // false

2. Number(value)

  • number로 변환시키는 메소드
Number("3.14") // => 3.14
Number("string") // => NaN (Not a Number)

3. parseInt(value)

  • 정수로 변환시키는 메소드
  • 진법 변환 시 사용
parseInt('12.123') // => 12
parseInt('string') // => NaN
parseInt(3.14) // => 3

4. parseFloat

  • 실수로 변환시키는 메소드
parseFloat('3.141592') // => 3.141592
parseFloat('string') // => NaN

5. num.toFixed([digits])

  • arguments : 소숫점뒤에 나타낼 자릿수. 기본값은 0
  • return value : 결과값을 나타낼 문자열
var number = 3.14;
number.toFixed(3); // => 3.140
number.toFixed(-1); /* Uncaught RangeError: toFixed() digits argument must be between 0 and 100 */
var string = 'hello world';
string.toFixed(5); /* Uncaught TypeError: string.toFixed is not a function */

6. Math.min([value, ….]) / Math.max([value, …])

  • arguments : 비교할 숫자들(개수는 정해져 있지 않음)
  • return value : 주어진 숫자들 중 가장 작거나 / 가장 큰 수
var x = 10, y = -20;
var z = Math.min(x, y);
console.log(z) // => -20
Math.max(10, 20);   // => 20
Math.max(-10, -20); // => -10
Math.max(-10, 20);  // => 20
Math.max(10, 'string'); // NaN
Math.max(); // => -Infinity
  • Math.min() 함수는 때때로 값 제한, 즉 항상 기준 보다 작거나 같은 값으로 제한하는 용도로 사용됨
// Math.min() 함수 미사용 코드
var x = f(foo);

if (x > boundary) {
  x = boundary;
}
// Math.min() 함수 사용 코드
var x = Math.min(f(foo), boundary);

7. Math.floor(value) / Math.round(value)

  • arguments: 숫자
  • return value: 주어진 숫자의 내림/반올림 값
Math.floor( 45.95); // => 45
Math.floor(-45.95); // => -46
Math.round( 20.49); // => 20
Math.round( 20.5 ); // => 21
Math.round( 42   ); // => 42
Math.round(-20.5 ); // => -20
Math.round(-20.51); // => -21

8. Math.random

  • arguments : X
  • return value : 0과 1사이의 난수 반환
  • 특정 범위의 랜덤한 숫자를 뽑을 때 사용
console.log(Math.random()); // => 0.37287237198769496 숫자는 매번 바뀜