This is a new technology, part of the ECMAScript 2015 (ES6) standard .
This technology’s specification has been finalized, but check the compatibility table for usage and implementation status in various browsers.
Number.isSafeInteger() method determines whether the provided value is a number that is a safe integer. A safe integer is an integer that
- can be exactly represented as an IEEE-754 double precision number, and
- whose IEEE-754 representation cannot be the result of rounding any other integer to fit the IEEE-754 representation.
253 - 1 is a safe integer: it can be exactly represented, and no other integer rounds to it under any IEEE-754 rounding mode. In contrast,
253 is not a safe integer: it can be exactly represented in IEEE-754, but the integer
253 + 1 can’t be directly represented in IEEE-754 but instead rounds to
253 under round-to-nearest and round-to-zero rounding.
The safe integers consist of all integers from
-(253 - 1) inclusive to
253 - 1 inclusive.
- The value to be tested for being a safe integer.