JavaScript max: как найти максимальное значение в JavaScript

JavaScript Math max () — это встроенная функция, которая используется для нахождения максимума из набора чисел. Метод max () удобен в самых простых программах, а также в программах, работающих с продвинутыми алгоритмами. Метод JavaScript Math.max () изначально сравнивается с отрицательной бесконечностью, поэтому, если аргумент не передан, этот метод возвращает отрицательную бесконечность.

JavaScript Math max ()

Функция JavaScript max () возвращает число с наибольшим значением. Эта функция принимает значения Value1, Value2 , отправленные в функцию math.max () для поиска наибольшего.

Синтаксис

 Math.max (x, y, z, ...)//может передавать любое количество аргументов 

Параметры

Числа, из которых должен быть определен максимум.

Возвращаемое значение

Максимум всех переданных параметров.

См. Следующий рисунок.

Примечание

  1. Если аргумент не передан, этот метод возвращает отрицательную бесконечность.
  2. Если какой-либо из аргументов не может быть преобразован в допустимое число, этот метод возвращает NaN.
  3. Если параметр имеет значение null , метод max () возвращает 0.
  4. Если параметр является пустой строкой, метод max () возвращает 0.
  5. Если параметр является пустым массивом, метод max () возвращает 0.
  6. Если один аргумент равен положительному нулю, а другой — отрицательному нулю, этот метод возвращает положительный ноль, поскольку считает, что отрицательный ноль строго меньше положительного нуля.

Совместимость (версия и выше)

  1. Google Chrome v1
  2. Internet Explorer v3
  3. Firefox v1
  4. Edge v12
  5. Opera
  6. Safari v1
  7. Android webview v1
  8. Chrome для Android v18
  9. Firefox для Android v4
  10. Opera для Android
  11. Safari на iOS v1
  12. Samsung Internet v1.0
  13. Node.js

версия JavaScript : ECMAScript 1

Рассмотрим следующие примеры.

example1.js

В следующем примере демонстрируется использование метода js max ().

//example1.jsconsole.log (Math.max (1, 2, 3)); console.log (Math.max (-1, 2, 3, -6)); console.log (Math.max (0  , 0, -3)); console.log (Math.max (-1, -2)); console.log (Мат  h.max (-5, -2, -3, 1)); 

Вывод

 node example1330-11 

example2.js

Следующий пример демонстрирует случай, когда аргумент не передан.

//example2.jsconsole.log (Math.max ()); 

Вывод

 узел example2-Infinity 

example3. js

В следующем примере показаны случаи, когда возвращается NaN, и случаи, когда этого можно избежать.

//example3.jsvar a = "JavaScript  "; //нечисловая строка var b = [1, 2, 3, 4]; //массив с более чем одним элементом var c; //неопределенная переменная var d = {}; //пустой объектconsole.log (Math.max (a, 1)); console.log (Math.max (b, 2)); console.log (Math.max (c, 3)); console.log (Math  .max (d, 4)); var e = "23"; //числовая строка var f = [10]; //массив с одним элементомconsole.log (Math.max (e, 5)); console.log (Math.max (f, 1)); 

Вывод

 node example3NaNNaNNaNNaN2310 

example4.js

Следующий пример демонстрирует случаи где возвращается 0.

//example4.jsvar a = null; var b = ""; var c = []; console.log (Math.max (a, -1));  console.log (Math.max (b, -2)); console.log (Math.max (c, -3)); 

Вывод

 node example4000 

example5.js

Следующий пример демонстрирует случай, когда максимальный выход положительного нуля и отрицательного нуля необходимо определить.

//example5.jsvar a = 0; var b = -0; console.log (Math.max (a, b)); 

Вывод

 node example50 

Нахождение максимального элемента массива в Javascript

Метод max () не предназначен для обработки массива с несколькими элементами, передаваемыми напрямую в качестве параметра. Рассмотрим следующий пример:

example6.js

В следующем примере демонстрируется массив с различными элементами, передаваемыми напрямую в качестве параметра. .

//example6.jsvar arr = [1, 2, 3, 4]; console.log (Math.max (arr)); 

Вывод

 node example6NaN 

Однако метод max () может использоваться для нахождения максимума массива элементов следующими способами:

  1. Используя метод Javascript array.reduce ().
  2. Используя Function.prototype. apply ().
  3. Использование оператора распространения.

Использование метода Array.reduce ()

Чтобы найти максимальный элемент в массиве, можно использовать метод Array.reduce () для сравнения всех элементов массива.

 var arr = [1,  2, 3, 4]; var max_element = arr.reduce (function (x, y) {return Math.max (x, y);}); 

Рассмотрим следующий пример.

example7.js

В следующем примере демонстрируется использование метода Array.reduce () с max (), чтобы найти максимальный элемент массива.

//example7.jsvar arr = [34, 54, 0, -70, 64];  var max_element = arr.reduce (function (x, y) {return Math.max (x, y);}); console.log (max_element); 

Вывод

 node example764 

Использование метода Function.prototype.apply ()

Используя Function.prototype.apply (), можно найти максимальный элемент массива. Однако это необходимо использовать для массивов, содержащих всего несколько элементов..

 function findMax (arr) {return Math.max.apply (null, arr);} 

Рассмотрим следующий пример.

example8.js

В следующем примере демонстрируется использование метода Function.prototype.apply () с max () для поиска максимального элемента массива. .

//example8.jsfunction findMax (arr) {return Math.max.apply (null, arr);} var new_arr = [45, 67, -92, 100]; console.log  (findMax (new_arr)); 

Вывод

 node example8100 

Использование оператора распространения

Вышеупомянутый метод apply () также может быть реализован с помощью оператора распространения (…). Опять же, это необходимо использовать для массивов, содержащих всего несколько элементов.

var max = Math.max (… arr);

Рассмотрим следующий пример.

example9.js

Следующий пример демонстрирует использование оператора распространения с помощью max (), чтобы найти максимальный элемент массива.

//example9.jsvar arr = [10, 20, -90, 6]; console.log (Math.  max (... arr)); 

Вывод

 node example920 

См. также

Javascript Math.floor ()

Javascript Math.random ()

Javascript Math .cbrt ()

Javascript Math.exp ()

Javascript Math.log ()

Оцените статью
nanomode.ru
Добавить комментарий