1. Le principe du tri des données dans la méthode javascriptsort
sort() Les éléments du tableau sont triés sur place et ce tableau est renvoyé. le tri peut ne pas être stable. La valeur par défaut est de trier selon le point de code Unicode de la chaîne
syntaxe : arr.sort([compareFunction])
paramètre compareFunction
facultatif. Utilisé pour spécifier une fonction disposée dans un certain ordre. En cas d'omission, les éléments sont triés en fonction des positions Unicode des caractères dans la chaîne convertie.
Si compareFunction(a, b) est inférieur à 0, alors a sera disposé avant b ;
Si compareFunction(a, b) est égal à 0, les positions relatives de a et b restent inchangés. Remarque : Le standard ECMAScript ne garantit pas ce comportement, et tous les navigateurs ne s'y conformeront pas
Si compareFunction(a, b) est supérieur à 0, b sera trié avant a.
//将数组中的元素按照从小大的顺序排列 var arr=[11,55,22,45,16,87]; arr.sort(function(a,b){ return a-b; }); console.log(arr);
2. Simuler le principe de tri des données au sein de javascript
sortSelf(arr,function(a,b){ return a-b; }); console.log(arr); function sortSelf(array,fn){ for (var i = 0; i < array.length-1; i++) { var isSorted=true; //默认已经排好序 for (var j = 0; j < array.length-1-i; j++) { //调用函数 if(fn(array[j],array[j+1])>0){ //交换两个变量 var temp=array[j]; array[j]=array[j+1]; array[j+1]=temp; isSorted=false; } } if(isSorted){ break; } } }
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!