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

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

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

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

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

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

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

Нотатка:

Для початківців важливо розуміти, що Number.EPSILON не є мінімальним представимим числом в JavaScript. Він лише вказує на мінімальну різницю між двома числами, яку JavaScript вважає відмінною від нуля.

Порада:

Використовуйте Number.EPSILON для порівняння чисел з плаваючою комою. Через обмеження представлення чисел в комп'ютерах, пряме порівняння двох чисел з плаваючою комою може не завжди давати очікуваний результат. Наприклад:

if (Math.abs(a - b) < Number.EPSILON) {
    console.log('Числа майже рівні.');
}
Порада:

Якщо ви створюєте бібліотеку або функцію для математичних операцій, завжди враховуйте Number.EPSILON для обробки чисел з плаваючою комою. Це допоможе уникнути непередбачуваних помилок порівняння.

Синтаксис

Number.EPSILON

Значення

Return

Переглядачі

Переглядач

34

25

9

21

12

Переглядач

37

34

25

9

Переглядач

0.12.0

1.0

Приклади


У цьому прикладі ми використовуємо Number.EPSILON для порівняння двох чисел з плаваючою комою. Завдяки цьому можна визначити, чи є вони "майже рівними", ураховуючи потенційні неточності представлення чисел у комп'ютерах.

const num1 = 0.1 + 0.2;
const num2 = 0.3;

if (Math.abs(num1 - num2) < Number.EPSILON) {
    console.log('Числа майже рівні.');
} else {
    console.log('Числа відмінні.');
}
// Виведе: Числа майже рівні.

У цьому прикладі ми розглянемо складніший сценарій, де використовуємо Number.EPSILON для перевірки коректності обчислення власної функції sqrt, яка визначає квадратний корінь числа за допомогою методу Ньютона.

function sqrt(x, guess = x / 2.0) {
    const improved_guess = (guess + x / guess) / 2;
    if (Math.abs(guess - improved_guess) < Number.EPSILON) {
        return improved_guess;
    }
    return sqrt(x, improved_guess);
}

const result = sqrt(2);
console.log(result); // Приблизно 1.414213562373095

// Перевірка результату за допомогою вбудованої функції
if (Math.abs(result * result - 2) < Number.EPSILON) {
    console.log('Результат вірний.');
} else {
    console.log('Результат невірний.');
}
// Виведе: Результат вірний.