Adicionando a Number.MAX_VALUE
A resposta a essa pergunta pode ser dolorosamente óbvia, mas não consigo encontrá-la nos documentos do Mozilla nem no Google a partir de uma pesquisa superficial.
Se você tem algum código como este
Number.MAX_VALUE + 1; // Infinity, right?
Number.MIN_VALUE - 1; // -Infinity, right?
Então eu esperaria adicionarqualquer coisa para Number.MAX_VALUE iria empurrá-lo paraInfinity
. O resultado é apenasNumber.MAX_VALUE
Cuspiu de volta para mim.
No entanto, ao brincar no console do Google Chrome JS, percebi que ele não se tornou realmenteInfinity
até eu adicionar / subtrair o suficiente:
Number.MAX_VALUE + Math.pow(100,1000); // now we hit Infinity
Number.MIN_VALUE - Math.pow(100,1000); // -Infinity at last
Qual é a explicação para este "buffer" entreNumber.MAX_VALUE
eInfinity
?