- Math.max()
- Синтаксис
- Параметры
- Описание
- Примеры
- Пример: использование метода Math.max()
- Нахождение максимального элемента в массиве
- Спецификации
- Совместимость с браузерами
- Смотрите также
- Found a content problem with this page?
- MDN
- Support
- Our communities
- Developers
- Находим наибольшее и наименьшее значение массива на PHP/JavaScript
- Находим наибольшее и наименьшее значение одномерного массива на PHP
- Находим наибольшее и наименьшее значение многомерного массива на PHP
- Находим наибольшее и наименьшее значение одномерного массива на JavaScript
- Находим наибольшее и наименьшее значение многомерного массива на JavaScript
- Поиск минимального и максимального элемента в массиве на JavaScript
Math.max()
Метод Math.max() возвращает наибольшее из нуля или более чисел.
Синтаксис
Параметры
Описание
Поскольку метод max() является статическим методом объекта Math , вы всегда должны использовать его как Math.max() , а не пытаться вызывать метод на созданном экземпляре объекта Math (поскольку объект Math не является конструктором).
При вызове без аргументов результатом вызова будет значение — Infinity .
Если хотя бы один из аргументов не может быть преобразован в число, результатом будет NaN .
Примеры
Пример: использование метода Math.max()
.max(10, 20); // 20 Math.max(-10, -20); // -10 Math.max(-10, 20); // 20
Нахождение максимального элемента в массиве
Следующая функция использует метод Function.prototype.apply() для нахождения максимального элемента в числовом массиве. Вызов getMaxOfArray([1, 2, 3]) эквивалентен вызову Math.max(1, 2, 3) , однако вы можете использовать функцию getMaxOfArray() вместе с программно сконструированными массивами любого размера. Рекомендуется использовать только в случае обработки массивов с небольшим количеством элементов.
function getMaxOfArray(numArray) return Math.max.apply(null, numArray); >
Спецификации
Совместимость с браузерами
BCD tables only load in the browser
Смотрите также
Found a content problem with this page?
This page was last modified on 7 нояб. 2022 г. by MDN contributors.
Your blueprint for a better internet.
MDN
Support
Our communities
Developers
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998– 2023 by individual mozilla.org contributors. Content available under a Creative Commons license.
Находим наибольшее и наименьшее значение массива на PHP/JavaScript
Массивы – одно из удобных структурированных способов хранения информации. Каждый элемент такого массива имеет свое место, свой ключ и значение. Содержание же массивов может быть разным, как, например, база номеров, названий или же простых числовых значений. Говоря о числе, перед нами могут вставать разного рода задачи, например, вывод максимального или минимального значения. О том, как это решается на разных языках программирования, сегодня и пойдет речь.
Находим наибольшее и наименьшее значение одномерного массива на PHP
Все массивы различаются по своей структуре. Рассмотрим два простых одномерных массива, один из которых не содержит в себе ключей:
$my_array = array(22, 24, 37, 74, 23, 2, 10);
и один, идентичный предыдущему, но уже с ключами:
$my_array = array( 1 => 22, 2 => 24, 3 => 37, 4 => 74, 5 => 23, 6 => 2, 7 => 10 );
Постараемся вывести максимальное и минимальное значение этого массива. Для этого мы воспользуемся стандартными функциями «max» и «min» соответственно:
echo max($my_array); // Выведем 74 echo min($my_array); // Выведем 2
Если мы рассмотрим более подробно второй массив, то в качестве результата мы можем получить ключ максимального или минимального значений.
$my_array = array( 1 => 22, 2 => 24, 3 => 37, 4 => 74, 5 => 23, 6 => 2, 7 => 10 );
это будет выглядеть следующим образом:
$max = array_keys($my_array, max($my_array)); $max = $max[0];// Ключ максимального значения $min = array_keys($my_array, min($my_array)); $min = $min[0]; // Ключ минимального значения echo $max; // Выведем результат максимального значения
Соответственно, ключ максимального значения – это «4», а минимального – «6».
Находим наибольшее и наименьшее значение многомерного массива на PHP
Многомерные массивы отличаются своей вложенностью. Например, двумерный массив будет выглядеть следующим образом без ключей:
$my_array = array( array(22, 24, 37), array(74, 23, 2), array(10) );
И, соответственно, с некими ключами:
$my_array = array( array( 1 => 22, 2 => 24, 3 => 37 ), array( 4 => 74, 5 => 23, 6 => 2 ), array( 7 => 10 ) );
В таком случае нахождение максимальных и минимальных значений немного затруднительно, но так же реально.
Для начала, чтобы здесь найти максимум и минимум, преобразуем массив в одномерный:
$out_array = array(); foreach($my_array as $sub_array) { $out_array = array_merge($out_array, $sub_array); >
Конструкция работает для обоих вариантов выше. И далее, по примеру одномерного массива, выведем нужные нам данные:
echo max($out_array); // Выведем 74 echo min($out_array); // Выведем 2
В качестве небольшого бонуса приведу пример еще одного популярного двумерного массива:
$my_array = array( array( "id" => "1", "date" => "2018-03-19", "price" => "5", ), array ( "id" => "2", "date" => "2018-03-19", "price" => "50", ), array ( "id" => "3", "date" => "2018-03-19", "price" => "25", ) );
Под популярностью я подразумеваю не содержание, а пример его структуры. Допустим, что здесь вам необходимо сделать вывод максимального и минимального значения только ключей «price».
Первое, что вам нужно в таком случае – получить новый массив только с этими данными:
$numbers = array_column($my_array, "price");
И дальше по примеру того же одномерного массива выводим максимум и минимум:
echo min($numbers); // Выведем 5 echo max($numbers); // Выведем 50
На этом работа с массивами на PHP закончена. Если вдруг структура вашего массива отличается и вы не знаете, как его обработать – задайте соответствующий вопрос в комментариях, постараюсь вам помочь.
Находим наибольшее и наименьшее значение одномерного массива на JavaScript
В отличие от PHP, в JavaScript вид массивов куда проще, и простой одномерный массив будет выглядеть следующим образом:
var my_array = [22, 24, 37, 74, 23, 2, 10];
Индексы здесь никакие не указываются. Для того чтобы найти в этом массиве максимальное и минимальное значение, напишем две своих простеньких функции:
function arrayMax(array) { return array.reduce(function(a, b) { return Math.max(a, b); >); > function arrayMin(array) { return array.reduce(function(a, b) { return Math.min(a, b); >); >
которые используются для нахождения нужных нам значений. Использование также простое:
alert(arrayMax(my_array)); // Выведем 74 alert(arrayMin(my_array)); // Выведем 2
В этом случае на экран выведутся числа «2» и «74» как минимальное и максимальное значение массива.
Находим наибольшее и наименьшее значение многомерного массива на JavaScript
Многомерные массивы в JavaScript так же просты, и выглядят они следующим образом:
var my_array = [ [22, 24, 37], [74, 23, 2], [10] ];
Давайте попробуем здесь найти максимум и минимум. Для начала мы напишем функцию, с помощью которой по привычной уже нам схеме представим этот массив как одномерный:
var out_array = []; my_array.forEach(function(v) { Array.prototype.push.apply(out_array, v); >);
И с помощью объекта «Math» получим нужные нам значения:
var min = Math.min.apply(null, out_array); // Получим 2 var max = Math.max.apply(null, out_array); // Получим 74 alert(max); // Выведем 74 на экран
На самом деле вместо объекта «Math» можно использовать наши функции, используемые в варианте с одномерным массивом, но чтобы вы понимали, что любую задачу можно решить несколькими способами – здесь я привел немного другое решение.
Ну и по традиции – небольшой бонус. Рассмотрим еще один многомерный массив с такой структурой:
var my_array = [ ["Один", "2018-03-19", 5], ["Два", "2018-03-19", 50], ["Три", "2018-03-19", 25], ];
Как мы видим, числовые значения в каждом массиве находятся на третьем месте. Давайте напишем код и получим соответствующие значения только из этих данных:
var min = +Infinity; var max = -Infinity; my_array.forEach(function(item) { if(+item[2] < min) { min =+ item[2]; // Ищем минимальное значение >>); my_array.forEach(function(item) { if(+item[2] > max) { max =+ item[2]; // Ищем максимальное значение > >); alert(min+" "+max); // Выводим результат на экран
На этом все. Не забывайте поддерживать проект. Впереди вас ждет много всего интересного!
Поиск минимального и максимального элемента в массиве на JavaScript
Работа с массивами — одна из наиболее распространенных задач при разработке на JavaScript. Нередко возникает необходимость найти минимальное или максимальное значение в массиве. Например, у нас есть массив чисел, и нужно определить, какое из них наибольшее или наименьшее:
let numbers = [45, 30, 60, 100, 25];
Методы min() и max() , которые есть во многих других языках программирования, в JavaScript отсутствуют. Однако, в JavaScript есть много других способов решить эту задачу.
Один из наиболее простых — это использование функций Math.min() и Math.max() . Они принимают неограниченное количество аргументов и возвращают минимальное и максимальное значение соответственно. Чтобы передать в них все элементы массива, используется оператор расширения ( . ):
let min = Math.min(. numbers); // 25 let max = Math.max(. numbers); // 100
Если массив содержит очень большое количество элементов, использование оператора расширения может привести к ошибке из-за ограничения на максимальное количество аргументов функции. В этом случае можно использовать метод reduce() , который позволяет обработать все элементы массива:
let min = numbers.reduce((a, b) => Math.min(a, b)); let max = numbers.reduce((a, b) => Math.max(a, b));
Итак, мы рассмотрели два возможных способа найти минимальное и максимальное значение в массиве на JavaScript. Оба способа просты в использовании и подойдут для большинства задач.