JS властивість Number.POSITIVE_INFINITY


Загальний опис

Number.POSITIVE_INFINITY в JavaScript представляє значення плюс нескінченності. Ця властивість вказує на таке числове значення, яке є більше за будь-яке інше можливе числове значення в мові. Вона часто з'являється в результаті обчислень, що перевищують допустимі межі числового представлення, і може використовуватися в порівняннях та обчисленнях для певних крайніх ситуацій.

Однією з поширених ситуацій, коли може знадобитися Number.POSITIVE_INFINITY, є ділення додатного числа на нуль.

Приклад:

let result = 1 / 0;
console.log(result); // виведе: Infinity

Це значення можна порівняти з Number.POSITIVE_INFINITY для визначення його характеристики:

if (result === Number.POSITIVE_INFINITY) {
    console.log("Результат є плюс нескінченністю");
}

Особливості Number.POSITIVE_INFINITY:

  1. Number.POSITIVE_INFINITY — це унікальне значення, яке представляє позитивну нескінченність, і воно є більше за будь-яке інше число в JavaScript, окрім самого себе.
  2. Якщо до Number.POSITIVE_INFINITY застосувати математичні операції, результат буде передбачуваним. Наприклад, додавання або віднімання будь-якого числа до Number.POSITIVE_INFINITY завжди поверне Number.POSITIVE_INFINITY.
  3. Однак, коли Number.POSITIVE_INFINITY додається до Number.NEGATIVE_INFINITY (від'ємна нескінченність), результат буде NaN, адже ці два значення взаємно скасовують одне одного.
автор: Bond

Порада

Коли ви конвертуєте Number.POSITIVE_INFINITY в інші типи даних або формати, результат може бути непередбачуваним. Наприклад, перетворення його в рядок у JSON поверне рядок "Infinity", що може не бути коректно обробленим іншими системами або мовами програмування.

автор: Bond
Порада

Хоча Number.POSITIVE_INFINITY може бути корисним при проведенні математичних обчислень або у випадках, коли необхідно представити "безкінечно велике" число, уникайте його використання в реальних додатках. Це може призвести до неочікуваних результатів або помилок.

автор: Bond
Нотатка

Деякі математичні алгоритми вимагають порівняння числа з "найбільшим" можливим значенням. У таких випадках Number.POSITIVE_INFINITY може бути корисним, щоб представити це "безмежне" число.

автор: Bond
Нотатка

Перед тим як проводити операції з числами, завжди перевіряйте результат на Number.POSITIVE_INFINITY. Особливо це стосується діленьня, де дільник може стати нулем. Якщо ваш результат є дорівнює Number.POSITIVE_INFINITY, це може бути ознакою проблеми в вашому коді.

let result = someNumber / denominator;
if (result === Number.POSITIVE_INFINITY) {
    console.log("Операція повернула нескінченність!");
}
автор: Bond

Синтаксис

Number.POSITIVE_INFINITY

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE
1 1 1 3 12
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
4.4 18 4 1
Підтримка: серверні переглядачі
Переглядач Node.js Deno
0.10.0 1.0

Приклади

+ запропонувати свій приклад у пісочниці

У цьому прикладі ми використовуємо Number.POSITIVE_INFINITY як вихідне значення при пошуку найменшого числа в масиві. При такому підході будь-яке дійсне число з масиву буде менше за це вихідне значення, що гарантує його коректну зміну в процесі порівняння.

const numbers = [3, 5, 1, 8, 6];
let min = Number.POSITIVE_INFINITY;

for (let num of numbers) {
    if (num < min) {
        min = num;
    }
}

console.log("Найменше число в масиві:", min);  // 1
автор: Bond

У цьому прикладі ми використовуємо Number.POSITIVE_INFINITY для визначення мінімальної відстані між парами точок на площині.

function distance(pointA, pointB) {
    return Math.sqrt(Math.pow(pointB.x - pointA.x, 2) + Math.pow(pointB.y - pointA.y, 2));
}

const points = [
    { x: 1, y: 2 },
    { x: 3, y: 4 },
    { x: 5, y: 6 },
    { x: 7, y: 8 }
];

let minDistance = Number.POSITIVE_INFINITY;
let closestPoints = null;

for (let i = 0; i < points.length; i++) {
    for (let j = i + 1; j < points.length; j++) {
        const dist = distance(points[i], points[j]);
        if (dist < minDistance) {
            minDistance = dist;
            closestPoints = [points[i], points[j]];
        }
    }
}

console.log("Найменша відстань між точками:", minDistance);
console.log("Найближчі точки:", closestPoints);
автор: Bond

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід