sam*_*eie 5 javascript arrays sorting
我正在学习 Javascript,遇到了对数字进行排序的问题,我不明白排序功能是如何工作的,我找到了另一种对数字进行排序的方法,但它是使用列表而不是数组,我需要解释。我还看到这个链接:Sorting array with Numbers without sort() method
const points = [40, 100, 1, 5, 25, 10];
document.getElementById("demo1").innerHTML = points;
points.sort(function(a, b) {
return a - b
});
document.getElementById("demo2").innerHTML = points;
document.getElementById("demo3").innerHTML = points.sort();Run Code Online (Sandbox Code Playgroud)
unsorted:
<div id="demo1"></div>
sorted:
<div id="demo2"></div>
sorted alphabetically:
<div id="demo3"></div>Run Code Online (Sandbox Code Playgroud)
const points = [40, 100, 1, 5, 25, 10];
console.log(points)
console.log(points.sort())
console.log(points.sort(function(a, b){return (a - b);}))Run Code Online (Sandbox Code Playgroud)
默认情况下,sort() 函数将值作为字符串进行排序。
但是,如果数字按字符串排序,则“25”大于“100”,因为“2”大于“1”。
因此,sort() 方法在对数字进行排序时会产生不正确的结果。
您可以通过提供比较函数来解决此问题:
常量点 = [40, 100, 1, 5, 25, 10]; point.sort(函数(a, b){返回a - b});
| 归档时间: |
|
| 查看次数: |
1455 次 |
| 最近记录: |