Published Mar 16 2019
A number might satisfy Number.isInteger()
but not Number.isSafeInteger()
if it goes out of the boundaries of safe integers, which I explained above.
So, anything over 2^53
and below -2^53
is not safe:
Number.isSafeInteger(Math.pow(2, 53)) // false
Number.isSafeInteger(Math.pow(2, 53) - 1) // true
Number.isSafeInteger(Math.pow(2, 53) + 1) // false
Number.isSafeInteger(-Math.pow(2, 53)) // false
Number.isSafeInteger(-Math.pow(2, 53) - 1) // false
Number.isSafeInteger(-Math.pow(2, 53) + 1) // true
I wrote an entire book on this topic 👇
I also got a super cool course 👇
© 2023 Flavio Copes
using
Notion to Site.
Follow on Twitter
Solopreneur? Wannabe? Adventure awaits