Math.min() в JavaScript — найменше з чисел
Загальний опис
Math.min() - це метод в JavaScript, який використовується для знаходження найменшого числа серед наданих чисел. У зв'язку з тим, що в програмуванні часто виникає потреба порівнювати числові значення або вибирати найменше з них, цей метод стає незамінним інструментом для розробників.
Використання Math.min() досить просте. Вам потрібно передати декілька чисел як аргументи, і метод поверне найменше з них. Наприклад:
let smallest = Math.min(3, 7, 2, 9, 5);
console.log(smallest); // Виведе: 2
Основні особливості та прийоми:
Math.min()може приймати будь-яку кількість аргументів.- Якщо один із аргументів не є числом або перетворюється на
NaN, метод повертаєNaN. - Якщо жодних аргументів не передано, метод повертає
Infinity, що може здатися дещо неінтуїтивним, але це особливість дизайну JavaScript.
Основні сфери застосування Math.min():
- Обробка статистичних даних: коли потрібно визначити найменше значення серед набору чисел.
- При виконанні математичних обчислень, де потрібно визначити мінімальне значення.
- В алгоритмах сортування та пошуку.
Порівняно з іншими методами та властивостями, Math.min() стає протилежністю до Math.max(). Тоді як Math.max() знаходить найбільше число серед аргументів, Math.min() знаходить найменше.
Практичний приклад:
Вага товарів у магазині зберігається в масиві. Для знаходження товару з найменшою вагою можна використовувати Math.min():
let weights = [0.5, 2.7, 0.9, 1.2, 1.8];
let lightest = Math.min(...weights);
console.log("Товар з найменшою вагою важить:", lightest); // Виведе: 0.5
Якщо у вас є масив чисел та вам потрібно знайти найменше число серед них, ви можете використовувати оператор розпаковування (...) для передачі елементів масиву як окремих аргументів для Math.min().
- Порада
-
Якщо у вас є масив чисел і вам потрібно знайти найменше серед них, використовуйте метод
автор: Bondspreadдля передачі елементів масиву в якості аргументів доMath.min(). Наприклад:let minValue = Math.min(...myArray);. - Порада
-
Для великих наборів даних розгляньте можливість використання інших алгоритмічних рішень для пошуку мінімуму замість постійного виклику
автор: BondMath.min(). Це може бути ефективнішим, особливо для даних, які вже частково відсортовані або мають певну структуру. - Нотатка
-
У разі передачі некоректних даних (не числових значень) до
автор: Bond`Math.min(), результат будеNaN`. Завжди перевіряйте вхідні дані перед викликом цього методу.
Синтаксис
Math.min()
Math.min(value1)
Math.min(value1, value2)
Math.min(value1, value2, /* …, */ valueN)
Параметри
value1-
Одне або більше чисел, серед яких буде обрано та повернено найменше значення.
автор: Bond valueN-
Додаткові числа, серед яких метод буде шукати найменше. Ви можете передати будь-яку кількість додаткових значень.
автор: Bond
Повернення
number-
Повертає найменше з наданих чисел. Повертає
автор: BondNaN, якщо будь-який з параметрів є або конвертується вNaN. ПовертаєInfinity, якщо параметри не надані.
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| 1 | 1 | 1 | 3 | 12 | 3 |
| Переглядач | ||||
|---|---|---|---|---|
| 4.4 | 18 | 4 | 1 |
| Переглядач | ||
|---|---|---|
| 0.10.0 | 1.0 |
Приклади
+ запропонувати свій приклад у пісочниці
У цьому прикладі ми маємо масив чисел numbers. Для знаходження найменшого числа в масиві ми використовуємо комбінацію Math.min() і spread-оператора. Spread-оператор дозволяє передати елементи масиву як окремі аргументи в Math.min().
// Створюємо масив чисел
const numbers = [34, 7, 23, 78, 12, 3, 5];
// Знаходимо найменше число в масиві за допомогою Math.min() та spread-оператора
const smallestNumber = Math.min(...numbers);
console.log(`Найменше число в масиві: ${smallestNumber}`);
Цей код створює інтерфейс, де користувач може вводити числа, розділені комами. Після того, як користувач натисне кнопку, програма буде використовувати Math.min() для знаходження найменшого числа та виведе результат на екран.
HTML
<header>
<h2 class="title">Math.min()</h2>
<p class="description">Повертає найменше число з-поміж наданих аргументів.</p>
</header>
<main>
<div class="result">
Введіть числа (розділені комою):<br>
<input type="text" id="numbers" placeholder="Наприклад, 5,3,7,2">
<button onclick="findMin()">Знайти мінімальне</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);
}
input[type="text"] {
padding: 10px;
margin: 10px 0;
display: block;
width: 250px;
}
button {
padding: 10px 15px;
background-color: #007BFF;
color: #FFF;
border: none;
cursor: pointer;
transition: 0.3s;
}
button:hover {
background-color: #0056b3;
}
JS
function findMin() {
let inputValue = document.getElementById('numbers').value;
let numbersArray = inputValue.split(',').map(Number);
let minNumber = Math.min(...numbersArray);
document.getElementById('output').innerHTML = "Мінімальне число: " + minNumber;
}
//# sourceURL=pen.js
У цьому прикладі ми запитуємо у користувача три числа за допомогою функції prompt() і конвертуємо отримане строкове значення в число за допомогою функції parseFloat(). Після цього ми знаходимо найменше з трьох введених чисел використовуючи Math.min() і виводимо результат на екран.
// Запитуємо у користувача три числа
let num1 = parseFloat(prompt("Введіть перше число:"));
let num2 = parseFloat(prompt("Введіть друге число:"));
let num3 = parseFloat(prompt("Введіть третє число:"));
// Знаходимо найменше з трьох чисел за допомогою Math.min()
const smallestValue = Math.min(num1, num2, num3);
console.log(`Найменше з введених чисел: ${smallestValue}`);
Коментарі
Коментарів ще немає — будьте першим!