JS метод Math.sign()
Загальний опис
Метод Math.sign() є частиною об'єкта Math в JavaScript і використовується для визначення знаку числа. Його основна корисність полягає у тому, що за допомогою цього методу можна легко і швидко визначити, чи є число додатним, від'ємним чи нулем. Це може бути корисним у різних математичних операціях або умовних виразах.
Для того, щоб використовувати Math.sign(), потрібно передати йому число як аргумент. Метод повертає:
1, якщо число додатнє;-1, якщо число від'ємне;0, якщо число рівне нулю і його знак позитивний;-0, якщо число рівне нулю і його знак негативний;NaN, якщо аргумент — це не число.
Давайте розглянемо декілька прикладів:
Простий приклад:
console.log(Math.sign(3)); // 1 console.log(Math.sign(-3)); // -1 console.log(Math.sign(0)); // 0Використання в умовному виразі:
let num = -5; if (Math.sign(num) === -1) { console.log('Число від\'ємне'); } else { console.log('Число додатнє або нуль'); }Робота з невідомими або динамічними значеннями:
let values = [3, -2, 0, "текст", NaN]; for (let value of values) { console.log(`Знак числа ${value} - ${Math.sign(value)}`); }
Особливості методу Math.sign():
- Якщо аргумент не є числом, метод автоматично спробує перетворити його на число. Наприклад,
Math.sign("5")повертає1, алеMath.sign("текст")повертаєNaN. - Для дуже малих чисел, які є близькими до нуля, але все ще мають певний знак (наприклад, з-за обрізання або заокруглення),
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);
