Метод isFinite() практически не отличается от isNaN(), за исключением того что обрабатывает странные граничные случаи, такие как 1/0, в которых возвращает значение infinity. Если применить метод isNaN() для infinity, то он вернет false, что выглядит несколько неоднозначно.