Heim >Web-Frontend >js-Tutorial >So finden Sie den Maximalwert in JavaScript

So finden Sie den Maximalwert in JavaScript

青灯夜游
青灯夜游Original
2021-06-23 17:34:2018608Durchsuche

Methode: 1. Verwenden Sie die Funktion „Math.max()“, um den Maximalwert zu ermitteln, der den größeren Wert der beiden angegebenen Zahlen zurückgeben kann. 2. Verwenden Sie die rekursive Funktion, um den Maximalwert zu ermitteln Durchlaufen, um den Maximalwert zu finden; 4. Verwenden Sie die Anweisung „Math.max.apply(null, [value, value, value, value..)“, um den Maximalwert zu finden.

So finden Sie den Maximalwert in JavaScript

Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer. Die erste Methode: Math.max Wenn ein Argument vorhanden ist, kann es nicht in einen numerischen Wert konvertiert werden, daher ist das Ergebnis NaN.

max ist eine statische Methode der Mathematik, daher sollte sie wie folgt verwendet werden: Math.max(), nicht als Methode der Mathematikinstanz (in einfachen Worten, verwenden Sie nicht new)

Falls vorhanden Keine Parameter, dann ist das Ergebnis -Unendlich (beachten Sie, dass es eine negative Unendlichkeit ist)

Und was wir analysieren müssen, ist:

    1 Wenn ein Parameter nicht in einen numerischen Wert umgewandelt werden kann, bedeutet dies, dass der Parameter kann in eine Zahl umgewandelt werden, zum Beispiel:
  • Math.max([value1[,value2, ...]])

    2 Wenn keine Parameter vorhanden sind, ist das Ergebnis -Infinity. Wenn keine Parameter vorhanden sind, ist das Ergebnis entsprechend ist Unendlich, also:

    Math.max(true, 0) // 1
    Math.max(true, '2', null) // 2
    Math.max(1, undefined) // NaN
    Math.max(1, {}) // NaN
  • Nachdem wir die Math.max-Methode verstanden haben, nehmen wir das Ermitteln des Maximalwerts eines Arrays als Beispiel und überlegen, welche Methoden verwendet werden können, um diese Anforderung zu erfüllen.
  • Ursprüngliche Methode
  • Die primitivste Methode besteht darin, sie einmal zu durchlaufen:

    var min = Math.min();
    var max = Math.max();
    console.log(min > max);
reduce

Da wir durch Durchlaufen des Arrays einen Endwert finden, können wir die Reduzierungsmethode:

var arr = [6, 4, 1, 8, 2, 11, 23];

var result = arr[0];
for (var i = 1; i < arr.length; i++) {
    result =  Math.max(result, arr[i]);
}
console.log(result);

anwenden

Apply zu verwenden ist eine andere Sache.

var arr = [6, 4, 1, 8, 2, 11, 23];

function max(prev, next) {
    return Math.max(prev, next);
}
console.log(arr.reduce(max));
ES6…

Verwenden Sie den Spread-Operator von ES6:

var arr = [6, 4, 1, 8, 2, 11, 23];
console.log(Math.max.apply(null, arr))
Die zweite Methode

Verwenden Sie eine rekursive Funktion

var arr = [6, 4, 1, 8, 2, 11, 23];
console.log(Math.max(...arr))
Verwenden Sie eine for-Schleife, um zu traversieren

var arr = [9,8,55,66,49,68,109,55,33,6,2,1];
var max = arr[0];
function findMax( i ){
  if( i == arr.length ) return max;
  if( max < arr[i] ) max = arr[i];
  findMax(i+1);
}
 
findMax(1);
console.log(max);

U Dies gilt für die direkte Übergabe des Arrays Die Max-Methode gibt zurück

var arr = [9,8,55,66,49,68,109,55,33,6,2,1];  
var max = arr[0];
for(var i = 1; i < arr.length; i++){
  if( max < arr[i] ){
    max = arr[i];
  }
}
 
console.log(max);

Darüber hinaus gibt es viele Array-Sortiermethoden, die alle nach der Sortierung den Maximal-/Minimalwert basierend auf dem neuen Array-Indexwert ermitteln können.

Math.max.apply(null,[9,8,55,66,49,68,109,55,33,6,2,1])
Mehrdimensionale Arrays können wie folgt geändert werden:

var a=[1,2,3,5];
console.log(Math.max.apply(null, a));//最大值
console.log(Math.min.apply(null, a));//最小值

[Verwandte Empfehlungen:

Javascript-Lern-Tutorial

]

Das obige ist der detaillierte Inhalt vonSo finden Sie den Maximalwert in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn