Mozilla's getting a new look. What do you think? https://mzl.la/brandsurvey

The Number.isInteger() method determines whether the passed value is an integer.

Syntax

Number.isInteger(value)

Parameters

value
The value to be tested for being an integer.

Return value

A Boolean indicating whether or not the given value is an integer.

Description

If the target value is an integer, return true, otherwise return false. If the value is NaN or infinite, return false.

Examples

Number.isInteger(0);         // true
Number.isInteger(1);         // true
Number.isInteger(-100000);   // true

Number.isInteger(0.1);       // false
Number.isInteger(Math.PI);   // 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

Polyfill

Number.isInteger = Number.isInteger || function(value) {
  return typeof value === "number" && 
    isFinite(value) && 
    Math.floor(value) === value;
};

Specifications

Specification Status Comment
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Number.isInteger' in that specification.
Standard Initial definition.
ECMAScript 2017 Draft (ECMA-262)
The definition of 'Number.isInteger' in that specification.
Draft  

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) 16 (16) No support (Yes) No support
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support No support No support 16.0 (16) No support No support No support

See also

  • The Number object it belongs to.

Document Tags and Contributors

 Last updated by: eduardoboucas,