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

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

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

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

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

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

JS властивість Global.Infinity

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

Infinity - це глобальна властивість в JavaScript, яка представляє позитивне нескінченне значення. Це числова властивість, яка є результатом ділення на нуль або будь-якої іншої математичної операції, коли результат є нескінченність.

Застосування Infinity має кілька причин. У математичних операціях, де результат може перевищити максимальне можливе числове значення у JavaScript, замість отримання помилки, ви отримаєте значення Infinity. Це може бути корисно для визначення або обробки таких ситуацій у ваших програмах. Наприклад, якщо ви робите операції з великими числами, такими як факторіали або експоненціальні функції.

Приклад:

let result = 2 * Math.pow(10, 1000);
console.log(result); // Виведе: Infinity

Це корисно враховувати, коли ви обчислюєте великі числа або коли виконуєте операції, де результат може бути нескінченність.

Основні особливості та прийоми використання Infinity:

  1. Infinity є числовим значенням, тому воно може брати участь в математичних операціях. Але будь-яка операція з Infinity завжди повертає Infinity, окрім ділення на Infinity.
console.log(Infinity + 1); // Виведе: Infinity
console.log(Infinity / Infinity); // Виведе: NaN
  1. Infinity може використовуватися для порівняння значень. Наприклад, якщо ви хочете перевірити, чи є число більше або менше за нескінченність:
let number = 1.79e308;
console.log(number < Infinity); // Виведе: true
  1. Infinity може бути використаний як значення за замовчуванням для змінних, які потребують найбільшого можливого числового значення:
let largestPossibleValue = Infinity;

Додатково, для досвідчених програмістів важливо відзначити, що є й інша форма нескінченності, а саме -Infinity, яка представляє від'ємне нескінченне значення. Значення -Infinity можна отримати, ділячи від'ємне число на нуль. Зазвичай -Infinity використовується менше, але має такі ж властивості, що й Infinity.

Нотатка:

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

Порада:

При роботі з великими об'ємами даних або складними обчисленнями завжди варто додавати перевірки на наявність значення Infinity. Це допоможе вам уникнути несподіваних результатів у вашому коді та забезпечити більш надійну роботу вашої програми.

function divide(a, b) {
    if(b === 0) {
        console.warn("Ділення на 0 неможливе!");
        return null;
    }
    return a / b;
}
Порада:

Іноді ви можете зустріти неявні приведення типів, які призводять до Infinity. Якщо вам потрібно робити розрахунки з великими числами, розгляньте можливість використання спеціалізованих бібліотек для високоточних розрахунків, щоб уникнути таких ситуацій.

Синтаксис

Infinity

Значення

Return

Переглядачі

Переглядач

1

1

1

4

12

Переглядач

4.4

18

4

1

Переглядач

0.10.0

1.0

Приклади


У цьому прикладі ми створили функцію для обчислення факторіалу числа. Однак, враховуючи обмеження JavaScript з числами, ми знаємо, що факторіал числа, більшого за 170, буде Infinity. Тому ми додаємо перевірку на початку функції, і якщо число більше 170, повертаємо Infinity.

// Функція для обчислення факторіалу числа. Факторіал числа - це добуток всіх цілих чисел від 1 до цього числа.
function factorial(num) {
    if (num > 170) { // Факторіал числа більше 170 в JavaScript буде Infinity, тому обмежуємо діапазон.
        return Infinity;
    }
    
    let result = 1;
    for (let i = 2; i <= num; i++) {
        result *= i;
    }
    
    return result;
}

console.log(factorial(5));  // 120
console.log(factorial(171)); // Infinity

Ця функція шукає найбільше значення в масиві. Щоб впевнитися, що жодне число в масиві не пропущено через порівняння, ми ініціалізуємо змінну maxValue як -Infinity. Таким чином, будь-яке реальне число в масиві завжди буде більше за початкове значення maxValue.

// Функція для пошуку найбільшого значення в масиві. 
function findMaxValue(arr) {
    let maxValue = -Infinity; // Починаємо з найменшого можливого значення.
    
    for (let value of arr) {
        if (value > maxValue) {
            maxValue = value;
        }
    }
    
    return maxValue;
}

console.log(findMaxValue([3, 5, 1, 7, 9]));  // 9
console.log(findMaxValue([-1, -4, -7, -2])); // -1