Maison >interface Web >js tutoriel >Résumé des méthodes Javascript pour obtenir les valeurs maximales et minimales dans un tableau_javascript astuces
Comparer la taille des valeurs dans un tableau est une opération relativement courante. Il existe de nombreuses façons de comparer les tailles. Par exemple, vous pouvez utiliser la fonction intégrée sort(). est le suivant :
Méthode 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; }
Si vous introduisez une bibliothèque de classes pour le développement et que vous craignez que la bibliothèque de classes implémente également une méthode prototype portant le même nom, vous pouvez vérifier le nom en double avant de générer la fonction :
if (typeof Array.prototype['max'] == 'undefined') { Array.prototype.max = function() { ... ... } }
Méthode 2 :
Utilisez les méthodes Math.max et Math.min pour obtenir des résultats rapidement. Apply permet à une méthode de spécifier l'objet appelant et les paramètres entrants, et les paramètres entrants sont organisés sous la forme d'un tableau. Il existe désormais une méthode appelée Math.max, l'objet appelant est Math, et plusieurs paramètres
Array.max = function( array ){ return Math.max.apply( Math, array ); }; Array.min = function( array ){ return Math.min.apply( Math, array ); };
Cependant, John Resig en fait des méthodes statiques de l'objet Math et ne peut pas utiliser l'appel en chaîne que le maître aime le plus. Mais cette méthode peut être plus simple. N'oubliez pas que l'objet Math est aussi un objet. Nous pouvons économiser quelques bits en l'écrivant dans la valeur littérale de l'objet.
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
Méthode 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
Méthode 4 :
var a=[1,2,3,5]; alert(Math.max.apply(null, a));//最大值 alert(Math.min.apply(null, a));//最小值
Les tableaux multidimensionnels peuvent être modifiés comme ceci :
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));//最小值
Le contenu ci-dessus est un résumé des méthodes Javascript pour obtenir les valeurs maximales et minimales dans un tableau partagé par l'éditeur. J'espère qu'il vous plaira.