Heim >Web-Frontend >js-Tutorial >Zusammenfassung der Javascript-Methoden zum Erhalten der Maximal- und Minimalwerte in einem Array_Javascript-Tipps

Zusammenfassung der Javascript-Methoden zum Erhalten der Maximal- und Minimalwerte in einem Array_Javascript-Tipps

WBOY
WBOYOriginal
2016-05-16 15:22:181435Durchsuche

Das Vergleichen der Größe von Werten in einem Array ist eine relativ häufige Operation. Es gibt viele Möglichkeiten, die Größe zu vergleichen. Hier sind die folgenden Methoden lautet wie folgt:

Methode 1:

//最小值
Array.prototype.min = function() {
var min = this[0];
var len = this.length;
for (var i = 1; i < len; i++){ 
if (this[i] < min){ 
min = this[i]; 
} 
} 
return min;
}
//最大值
Array.prototype.max = function() { 
var max = this[0];
var len = this.length; 
for (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 Prototypmethode mit demselben Namen implementiert, können Sie den doppelten Namen überprüfen, bevor Sie die Funktion generieren:

if (typeof Array.prototype['max'] == 'undefined') { 
Array.prototype.max = function() { 
... ...
}
}

Methode 2:

Verwenden Sie die Methoden Math.max und Math.min, um schnell Ergebnisse zu erhalten. Mit Apply kann eine Methode das aufrufende Objekt und die eingehenden Parameter angeben. Die eingehenden Parameter werden in Form eines Arrays organisiert. Es gibt jetzt eine Methode namens Math.max, das aufrufende Objekt ist Math und mehrere Parameter

Array.max = function( array ){ 
return Math.max.apply( Math, array );
};
Array.min = function( array ){ 
return Math.min.apply( Math, array );
};

John Resig macht sie jedoch zu statischen Methoden des Math-Objekts und kann den Kettenaufruf, den der Meister am meisten liebt, nicht verwenden. Aber diese Methode kann effizienter sein. Vergessen Sie nicht, dass das Math-Objekt auch ein Objekt ist. Wir können ein paar Bits einsparen, indem wir es in den Literalwert 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()// => 1

Methode 3:

function 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]; 
console.log(getMaximin(a,"max"));//10
console.log(getMaximin(b,"min"));//04

Methode 4:

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

Mehrdimensionale Arrays können wie folgt geändert werden:

var a=[1,2,3,[5,6],[1,4,8]];
var ta=a.join(",").split(",");//转化为一维数组
alert(Math.max.apply(null,ta));//最大值
alert(Math.min.apply(null,ta));//最小值

Der obige Inhalt ist eine Zusammenfassung der Javascript-Methoden zum Erhalten der Maximal- und Minimalwerte in einem vom Herausgeber freigegebenen Array. Ich hoffe, es gefällt Ihnen.

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