Spec-Zone.ru › JavaScript

isFinite()

Базовая версия Широко доступна

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.

Функция isFinite() определяет, является ли значение конечным, предварительно преобразуя значение в число при необходимости. Конечным числом является любое число, которое не является NaN или ±Infinity. Поскольку приведение типов внутри функции isFinite() может быть неожиданным, вы можете предпочесть использовать Number.isFinite().

Попробуйте

function div(x) {
  if (isFinite(1000 / x)) {
    return "Number is NOT Infinity.";
  }
  return "Number is Infinity!";
}

console.log(div(0));
// Expected output: "Number is Infinity!""

console.log(div(1));
// Expected output: "Number is NOT Infinity."

Синтаксис

isFinite(value)

Параметры

value
Значение для проверки.

Возвращаемое значение

false, если указанное значение является NaN, Infinity или -Infinity после преобразования в число; в противном случае true.

Описание

isFinite() — это свойство объекта global.

Когда аргумент функции isFinite() не имеет типа Number, значение сначала преобразуется в число, а затем полученное значение сравнивается с NaN и ±Infinity. Это так же сбивает с толку, как и поведение isNaN — например, isFinite("1") является true.

Number.isFinite() — это более надежный способ проверить, является ли значение конечным числовым значением, поскольку он возвращает false для любого нечислового ввода.

Примеры

Использование isFinite()

isFinite(Infinity); // false
isFinite(NaN); // false
isFinite(-Infinity); // false

isFinite(0); // true
isFinite(2e64); // true
isFinite(910); // true

// Would've been false with the more robust Number.isFinite():
isFinite(null); // true
isFinite("0"); // true

Спецификации

Спецификация
ECMAScript® 2027 Language Specification
# sec-isfinite-number

Совместимость с браузерами

Настольные компьютеры Мобильные устройства Сервер
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet WebView Android WebView on iOS Bun Deno Node.js
isFinite
1
12
1
3
1
18
4
10.1
1
1.0
4.4
1
1.0.0
1.0
0.10.0

См. также

  • Number.isFinite()
  • Number.NaN
  • Number.POSITIVE_INFINITY
  • Number.NEGATIVE_INFINITY

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/isFinite

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API