Maison >interface Web >js tutoriel >Comment utiliser sort() en js
Si cette méthode est appelée sans paramètres, les éléments du tableau seront triés par ordre alphabétique, ou plus précisément, par ordre d'encodage des caractères. Pour y parvenir, convertissez d’abord les éléments du tableau en chaînes (si nécessaire) à des fins de comparaison.
La méthode array.sort() utilise par défaut un tri ascendant. Si vous souhaitez trier selon d'autres critères, vous devez fournir une fonction de comparaison. Cette fonction compare deux valeurs puis renvoie une valeur à décrire. les deux valeurs. La fonction de comparaison doit avoir deux paramètres a et b, et sa valeur de retour est la suivante :
Si a est inférieur à b, a doit apparaître avant b dans le tableau trié, puis renvoyer une valeur inférieure à la valeur 0.
Si a est égal à b, renvoie 0.
Si a est supérieur à b, renvoie une valeur supérieure à 0.
Simple : comparez les deux paramètres a et b de la fonction, renvoyez a-b par ordre croissant et renvoyez b-a par ordre décroissant
Voici quelques exemples pour comprendre
var arr = [4,3,6,5,7,2,1]; arr.sort(); console.log(arr);//输出结果[1,2,3,4,5,6,7]
var arr = [4,3,6,5,7,2,1]; arr.sort(); arr.sort(function(a,b){ return b-a; }); console.log(arr);//输出结果[7,6,5,4,3,2,1]
var arr= [ { 'sortNo': 2}, { 'sortNo': 1}, { 'sortNo': 5}, { 'sortNo': 6}, { 'sortNo': 7}, { 'sortNo': 3}, { 'sortNo': 9}, { 'sortNo': 4}, { 'sortNo': 0} ]; arr.sort(function(a, b){ return a.sortNo - b.sortNo; }); console.log(arr);//输出结果//{ 'sortNo': 2}//{ 'sortNo': 1}//{ 'sortNo': 5}//{ 'sortNo': 6}//{ 'sortNo': 7}//{ 'sortNo': 3}//{ 'sortNo': 9}//{ 'sortNo': 4}//{ 'sortNo': 0}
(cet exemple Si le sortNo est le même, appuyez sur sortNo2 de grand à petit)
var arr= [ { 'sortNo': 2, 'sortNo2': 3}, { 'sortNo': 1, 'sortNo2': 3}, { 'sortNo': 5, 'sortNo2': 3}, { 'sortNo': 6, 'sortNo2': 3}, { 'sortNo': 7, 'sortNo2': 3}, { 'sortNo': 3, 'sortNo2': 4}, { 'sortNo': 3, 'sortNo2': 2}, { 'sortNo': 3, 'sortNo2': 1}, { 'sortNo': 3, 'sortNo2': 3}, { 'sortNo': 8, 'sortNo2': 3}, { 'sortNo': 4, 'sortNo2': 1}, { 'sortNo': 4, 'sortNo2': 2} ]; arr.sort(function(a, b){ if (a.sortNo === b.sortNo) { return b.sortNo2 - a.sortNo2; } else { return a.sortNo - b.sortNo; } }); console.log(arr); //输出结果//{ 'sortNo': 1, 'sortNo2': 3}//{ 'sortNo': 2, 'sortNo2': 3}//{ 'sortNo': 3, 'sortNo2': 4}//{ 'sortNo': 3, 'sortNo2': 3}//{ 'sortNo': 3, 'sortNo2': 2}//{ 'sortNo': 3, 'sortNo2': 1}//{ 'sortNo': 4, 'sortNo2': 2}//{ 'sortNo': 4, 'sortNo2': 1}//{ 'sortNo': 5, 'sortNo2': 3}//{ 'sortNo': 6, 'sortNo2': 3}//{ 'sortNo': 7, 'sortNo2': 3}//{ 'sortNo': 8, 'sortNo2': 3}
Recommandations associées :
Exemple détaillé de tableau JavaScript méthodes sorting reverse() et sort()
Comment fonctionne la fonction sort() en JavaScript
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!