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

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

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

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

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

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

JS метод Math.sign()

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

Метод Math.sign() є частиною об'єкта Math в JavaScript і використовується для визначення знаку числа. Його основна корисність полягає у тому, що за допомогою цього методу можна легко і швидко визначити, чи є число додатним, від'ємним чи нулем. Це може бути корисним у різних математичних операціях або умовних виразах.

Для того, щоб використовувати Math.sign(), потрібно передати йому число як аргумент. Метод повертає:

  • 1, якщо число додатнє;
  • -1, якщо число від'ємне;
  • 0, якщо число рівне нулю і його знак позитивний;
  • -0, якщо число рівне нулю і його знак негативний;
  • NaN, якщо аргумент — це не число.

Давайте розглянемо декілька прикладів:

  1. Простий приклад:

    console.log(Math.sign(3));     // 1
    console.log(Math.sign(-3));    // -1
    console.log(Math.sign(0));     // 0
    
  2. Використання в умовному виразі:

    let num = -5;
    if (Math.sign(num) === -1) {
     console.log('Число від\'ємне');
    } else {
     console.log('Число додатнє або нуль');
    }
    
  3. Робота з невідомими або динамічними значеннями:

    let values = [3, -2, 0, "текст", NaN];
    for (let value of values) {
     console.log(`Знак числа ${value} - ${Math.sign(value)}`);
    }
    

Особливості методу Math.sign():

  1. Якщо аргумент не є числом, метод автоматично спробує перетворити його на число. Наприклад, Math.sign("5") повертає 1, але Math.sign("текст") повертає NaN.
  2. Для дуже малих чисел, які є близькими до нуля, але все ще мають певний знак (наприклад, з-за обрізання або заокруглення), Math.sign() допоможе визначити цей знак..
Нотатка:

При роботі із не числовими типами даних, Math.sign() повертає NaN (не число). Тому завжди перевіряйте вхідні дані перед використанням методу, аби уникнути неочікуваних результатів. Наприклад: Math.sign("текст") поверне NaN.

Порада:

Якщо вам потрібно виконати якусь операцію тільки для додатних або тільки для від'ємних чисел, використовуйте Math.sign() для умовного програмування. Наприклад:

let number = -5;
if (Math.sign(number) === -1) {
  console.log("Число від'ємне");
}
Порада:

Для досвідчених програмістів: у випадку роботи з великими масивами чисел, де потрібно визначити знак кожного числа, використання Math.sign() може бути дуже корисним для оптимізації коду. Використання цього методу може спростити і прискорити обробку даних.

Синтаксис

Math.sign(x)

Параметри

*x

Число, знак якого потрібно визначити.

Return

number

Повертає число, яке представляє знак x:

  • Якщо x додатнє, повертає 1.
  • Якщо x від'ємне, повертає -1.
  • Якщо x - це додатний нуль, повертає 0.
  • Якщо x - це від'ємний нуль, повертає -0.
  • У всіх інших випадках повертає NaN, що позначає "не число".

Переглядачі

Переглядач

38

25

9

25

12

Переглядач

38

38

25

9

Переглядач

0.12.0

1.0

Приклади


За допомогою цього коду користувач може ввести будь-яке число у поле вводу і, натиснувши кнопку "Перевірити знак", отримає результат про знак введеного числа.

У цьому прикладі ми використовуємо метод Math.sign() для того, щоб визначити знак числа і вивести відповідне повідомлення у консоль.

const number = -15;

// Використовуємо Math.sign() для отримання знаку числа
const sign = Math.sign(number);

// Виводимо результат
if (sign === 1) {
    console.log("Число додатнє");
} else if (sign === -1) {
    console.log("Число від'ємне");
} else {
    console.log("Це нуль");
}

У цьому прикладі ми будемо сортувати масив чисел, розподіляючи їх на додатні, від'ємні та нулі. Це демонструє, як Math.sign() може бути корисним у більш складних операціях, наприклад, при роботі з масивами.

const numbers = [3, -2, 0, 5, -1, 0, -4, 8];

const positive = [];
const negative = [];
const zeros = [];

// Розподіляємо числа по масивах за їх знаком
for (const num of numbers) {
    const sign = Math.sign(num);
    if (sign === 1) {
        positive.push(num);
    } else if (sign === -1) {
        negative.push(num);
    } else {
        zeros.push(num);
    }
}

console.log("Додатні числа:", positive);
console.log("Від'ємні числа:", negative);
console.log("Нулі:", zeros);