JavaScript: почему parseInt(0.0000005) возвращает 5
разбираемся с особенностями использования parseInt() в JavaScript
Функция parseInt() довольно удобна для преобразования строк в целые числа, но иногда она дает неожиданные результаты.
Вот одна из таких загадок:
parseInt(0.0000005) // 5
Попробуем разобраться: сначала parseInt() преобразует аргумент в строку. Поэтому число 0.0000005 JavaScript автоматически преобразует в строку 5e-7.
Следующим шагом parseInt() читает полученную строку слева направо и останавливается на первом нечисловом символе. В 5e-7
Таким образом, parseInt() обрабатывает числа как строки, считывая информацию до первого нецифрового символа, поэтому и результатом является целое число 5, находящееся до первого нецифрового символа.
Спасибо за внимание.
