Movatterモバイル変換


[0]ホーム

URL:


  1. 개발자를 위한 웹 기술
  2. JavaScript
  3. JavaScript 참고서
  4. 표준 내장 객체
  5. Number
  6. Number.isInteger()

This page was translated from English by the community.Learn more and join the MDN Web Docs community.

View in EnglishAlways switch to English

Number.isInteger()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2015년 9월⁩.

Number.isInteger() 정적 메서드는 전달받은 값의 정수 여부를 판별합니다.

시도해 보기

function fits(x, y) {  if (Number.isInteger(y / x)) {    return "Fits!";  }  return "Does NOT fit!";}console.log(fits(5, 10));// Expected output: "Fits!"console.log(fits(5, 11));// Expected output: "Does NOT fit!"

구문

js
Number.isInteger(value)

매개변수

value

정수인지 확인하려는 값.

반환 값

주어진 값이 정수라면 불리언 값true, 그렇지 않으면false 입니다.

설명

대상 값이 정수이면true를 반환하고, 그렇지 않으면false를 반환합니다. 값이NaN 또는Infinity인 경우false를 반환합니다. 이 메서드는 정수로 표현할 수 있는 부동 소수점 숫자에 대해서도true를 반환합니다. 값이 숫자가 아닌 경우 항상false를 반환합니다.

일부 숫자 리터럴은 정수가 아닌 것처럼 보이지만 실제로는 정수를 나타내며, 이는 ECMAScript 부동 소수점 숫자 인코딩의 정밀도 제한(IEEE-754)으로 인해 발생합니다. 예를 들어5.000000000000000151e-16만큼만 차이가 나며, 이는 너무 작아서 표현할 수 없습니다. (참고로,Number.EPSILON은 1과 1보다 큰 다음 표현 가능한 부동 소수점 수 사이의 거리를 저장하며, 이는 약2.22e-16입니다). 따라서5.00000000000000015와 동일한 인코딩으로 표현되므로Number.isInteger(5.0000000000000001)true를 반환하게 됩니다.

이와 비슷하게Number.MAX_SAFE_INTEGER의 주변의 숫자는 정밀도 손실로 인해 정수가 아닌 경우에도Number.isIntegertrue를 반환하게 됩니다. (실제 임계값은 10진수를 표현하는 데 필요한 비트 수에 따라 달라집니다. 예를 들어Number.isInteger(4500000000000000.1)true이지만Number.isInteger(4500000000000000.5)false입니다.).

예제

isInteger 사용하기

js
Number.isInteger(0); // trueNumber.isInteger(1); // trueNumber.isInteger(-100000); // trueNumber.isInteger(99999999999999999999999); // trueNumber.isInteger(0.1); // falseNumber.isInteger(Math.PI); // falseNumber.isInteger(NaN); // falseNumber.isInteger(Infinity); // falseNumber.isInteger(-Infinity); // falseNumber.isInteger("10"); // falseNumber.isInteger(true); // falseNumber.isInteger(false); // falseNumber.isInteger([1]); // falseNumber.isInteger(5.0); // trueNumber.isInteger(5.000000000000001); // falseNumber.isInteger(5.0000000000000001); // true, 정밀도 손실 발생Number.isInteger(4500000000000000.1); // true, 정밀도 손실 발생

명세서

Specification
ECMAScript® 2026 Language Specification
# sec-number.isinteger

브라우저 호환성

같이 보기

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp