Math.sign() в JavaScript — знак числа
Загальний опис
Метод 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()допоможе визначити цей знак..
- Порада
-
Для досвідчених програмістів: у випадку роботи з великими масивами чисел, де потрібно визначити знак кожного числа, використання
автор: BondMath.sign()може бути дуже корисним для оптимізації коду. Використання цього методу може спростити і прискорити обробку даних. - Порада
-
Якщо вам потрібно виконати якусь операцію тільки для додатних або тільки для від'ємних чисел, використовуйте
Math.sign()для умовного програмування. Наприклад:
автор: Bondlet number = -5; if (Math.sign(number) === -1) { console.log("Число від'ємне"); } - Нотатка
-
При роботі із не числовими типами даних,
автор: BondMath.sign()повертаєNaN(не число). Тому завжди перевіряйте вхідні дані перед використанням методу, аби уникнути неочікуваних результатів. Наприклад:Math.sign("текст")повернеNaN.
Синтаксис
Math.sign(x)
Параметри
x-
Число, знак якого потрібно визначити.
автор: Bond
Повернення
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 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);
За допомогою цього коду користувач може ввести будь-яке число у поле вводу і, натиснувши кнопку "Перевірити знак", отримає результат про знак введеного числа.
HTML
<header>
<h2 class="title">Math.sign()</h2>
<p class="description">Визначає знак числа.</p>
</header>
<main>
<div class="result">
<label for="inputNumber">Введіть число:</label>
<input type="number" id="inputNumber" value="0">
<button onclick="checkSign()">Перевірити знак</button>
<p id="output">Результат: </p>
</div>
</main>
CSS
body {
font-size: 16px;
line-height: 1.5;
font-family: monospace;
}
header {
background-color: #f1f1f1;
margin-bottom: 25px;
padding: 15px;
-webkit-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
-moz-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}
header h2.title {
padding-bottom: 15px;
border-bottom: 1px solid #999;
}
header p.description {
font-style: italic;
color: #222;
}
.result {
background-color: #f8f8f8;
padding: 15px;
-webkit-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
-moz-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}
JS
function checkSign() {
const inputValue = document.getElementById('inputNumber').value;
const sign = Math.sign(inputValue);
let resultText = '';
if (sign === 1) {
resultText = 'Додатнє число.';
} else if (sign === -1) {
resultText = 'Від\'ємне число.';
} else {
resultText = 'Нуль або не число.';
}
document.getElementById('output').innerText = 'Результат: ' + resultText;
}
//# sourceURL=pen.js
У цьому прикладі ми використовуємо метод 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("Це нуль");
}
Коментарі
Коментарів ще немає — будьте першим!