Я встретил функцию goog.math.isFiniteNumber
в Google Closure Library. Что он делает, это проверить, является ли данное число конечным, а не NaN
.
Основной код:
goog.math.isFiniteNumber = function(num) {
return isFinite(num) && !isNaN(num);
};
Итак, сначала он проверяет, является ли число конечным, используя встроенную функцию isFinite
, а затем выполняет дополнительную проверку, чтобы убедиться, что число не NaN
, используя isNaN
.
Однако isFinite
уже возвращает false, если аргумент NaN
. Итак, какие преимущества дает проверка для isNaN
?