Наповнення JS розділу

Добридень, Пані та Панове, завдяки вам вдалося зібрати більше 19тис грн з необхідних 15тис на впровадження JS розділу.

JS розділ вже впроваджено - переходимо до його наповнення і почнемо бігти довгий марафон, адже JS має більше 1100 різноманітних методів, властивостей, подій і т.д., які необхідно описати.

Будемо працювати, і вдень, і вночі, щоб орієнтовно взимку закінчити наповнювати JS розділ!

Ви також можете допомогти нам в цьому. Долучайтеся до нашої спільноти в дискорді - ставайте її частиною і допомагайте нашому розвитку.

Також, підтримуйте нас матеріально.

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, адже ці два значення взаємно скасовують одне одного.
Порада:

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

Порада:

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

Нотатка:

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

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

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

Синтаксис

Number.POSITIVE_INFINITY

Значення

Return

Переглядачі

Переглядач

1

1

1

3

12

Переглядач

4.4

18

4

1

Переглядач

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

У цьому прикладі ми використовуємо 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);