Dodawanie do Number.MAX_VALUE

Odpowiedź na to pytanie może być boleśnie oczywista, ale nie mogę znaleźć jej w dokumentach Mozilli ani w Google z pobieżnego wyszukiwania.

Jeśli masz taki kod

Number.MAX_VALUE + 1; // Infinity, right?
Number.MIN_VALUE - 1; // -Infinity, right?

Wtedy oczekiwałbym dodaniabyle co do Number.MAX_VALUE przesunie go naInfinity. Rezultat jest sprawiedliwyNumber.MAX_VALUE splunął na mnie.

Jednak podczas grania w konsoli Chrome JS zauważyłem, że tak się nie stałoInfinity dopóki nie dodałem / nie odjąłem wystarczająco:

Number.MAX_VALUE + Math.pow(100,1000); // now we hit Infinity
Number.MIN_VALUE - Math.pow(100,1000); // -Infinity at last

Jakie jest wyjaśnienie tego „bufora” pomiędzyNumber.MAX_VALUE iInfinity?