Jetzt verwenden immer mehr Menschen die maximalen und minimalen Werte in einem Array, sodass ich eine Methode für alle verwendet habe. Der Code ist wie folgt. Wenn Sie Fragen haben, kontaktieren Sie mich bitte. Lassen Sie uns gemeinsam lernen und gemeinsam Fortschritte machen.
Schauen wir uns das folgende Beispiel an:
var numreg = /^-° · 0-9 weibliche+. Numreg.Test (PREVALUE) {return curvalue; PREVALUE;Beispiel 2:
Funktion getMaximin (arr, maximin) {if (maximin == "max") {return math.max.apply (math, arr); } else if (maximin == "min") {return math.min.apply (math, arr); } } var a = [3,2,4,2,10] var b = [12,4,45,786,9,78] alert("aMax:" + getMaximin(a,"max") + "---aMin:" + getMaximin(a,"min") + "---bMax:" + getMaximin(b,"max") + "---bMin:" + getMaximin (b, "min")) // amax: 10 --- Amin: 2 --- } else if (maximin == "min") {return math.min.apply (math, arr); }} var a = [3,2,4,2,10] var b = [12,4,45,786,9,78] alert("aMax:" + getMaximin(a,"max") + "---aMin:" + getMaximin(a,"min") + "---bMax:" + getMaximin(b,"max") + "---bMin:" + GetMaximin (b, "min")) // Amax: 10 --- Amin: 2 --- Bmax: 786 --- Bmin: 4Schauen wir uns zwei weitere Methoden an
Methode 1:
// minimaler Wert array.Prototype.min = function () {var min = this [0]; var len = this.Length; für (var i = 1; i <len; i ++) {if (this [i] <min) {min = this [i]; }} return min;} // Maximal Value Array.Prototype.max = function () {var max = this [0]; var len = this.Length; für (var i = 1; i <len; i ++) {if (this [i]> max) {max = this [i]; }} return max;}Wenn Sie eine Klassenbibliothek für die Entwicklung einführen und befürchten, dass die Klassenbibliothek auch eine Prototyp -Methode mit demselben Namen implementiert, können Sie vor dem Generieren der Funktion ein doppeltes Namensurteil vornehmen:
if (typeof array.prototype ['max'] == 'undefined') {array.prototype.max = function () {... ...}}Methode 2:
Die Ergebnisse können schnell mit den Methoden Math.max und Math.min erzielt werden. Anwendung kann es einer Methode ermöglichen, das Anrufobjekt und die eingehenden Parameter anzugeben, und die eingehenden Parameter sind in einem Array organisiert. Es gibt jetzt eine Methode namens Math.max, das Anrufobjekt ist Mathematik und mehrere Parameter.
Array.max = function (array) {return math.max.apply (math, array);}; array.min = function (array) {return math.min.apply (math, array);};John Ressig ist jedoch eine statische Methode, die sie zu mathematischen Objekten macht und die geketteten Anrufe, die der Meister am meisten mag, nicht verwenden. Diese Methode kann jedoch optimierter werden. Vergessen Sie nicht, dass das Mathematikobjekt auch ein Objekt ist. Wir können ein paar Teile sparen, wenn wir es mit der wörtlichen Größe des Objekts schreiben.
Array.prototype.max = function () {return math.max.apply ({}, this)} array.prototype.min = function () {return Math.min.apply ({}, this)} [1,2,3] .Max () // => 3 [1,2,3] .Min () // =