Играла с JS и замечала это.parseInt() научная нотация
Почему parseInt(1e+21)
возвращение 1
и parseInt(1e+20)
возвращение 100000000000000000000
? parseInt(10e+20)
также возвращается 1
?
Почему parseInt(1.7976931348623157E+10308);
возвращение NaN
пока parseFloat(1.7976931348623157E+10308)
Infinity
?
Даже сделал последовательность Фибоначчи и любое значение, которое имеет +21
экспонент возвращает только первую цифру:
parseFloat()
возвращает правильное число до бесконечности.
Fibonacci demo (int : parseInt() : parseFloat())
(испытан в Chrome)
Почему parseInt (1e + 20) возвращает 100000000000000000000, а не 1? – rottenoats
Я уже сказал это. Когда '1e + 20' принуждается к строке, он выводит' 100000000000000000000'', который получает синтаксический анализ на правильное число. '1e + 21' выдает' '1e + 21" 'вместо этого. Попробуйте «+» суммы, которые я написал в ответ. –
rhaps0dy
я сделал. parseInt ("" + 1e + 21) 1 – rottenoats