用JS实现对每一项为数值的数组进行排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用JS实现对每一项为数值的数组进行排序相关的知识,希望对你有一定的参考价值。

用JS实现对每一项为数值的数组进行排序

<script>
//如果是字符串数组可以直接调用sort()方法
//如果是数值则不能直接调用,要在sort()方法里面加个一个匿名函数,并且给他传参,告诉他按数值进行排序而不是按字符串进行排序
var arry=[1,23,5,6,7,8,10];
alert(arry.sort(function(n1,n2)
return n1-n2;
));
</script>追问

前面还要判断是每一项为数值的数组,才排序

追答


//如果是字符串数组可以直接调用sort()方法
//如果是数值则不能直接调用,要在sort()方法里面第一一个匿名函数,并且给他传参,告诉他值是数字
var arry1=[1,23,5,"sds",8];
var flag=false;
for(var i=0;i

参考技术A 直接调用sort方法

数组的排序

数组的排序,除了用我们之前提及到的冒泡法来实现,还有个实现方式就是用数组里面的每一项,同他之后的每一项进行比较。

例子:

  

let arr=[1,5,2,6,7,3];
function test1(){
for(let i=0;i<arr.length-1;i++){
for(let j=i;j<arr.length-1;j++){
if(arr[j]>arr[j+1]){
let arr1=arr[j+1];
arr[j+1]=arr[j];
arr[j]=arr1;
}

}


}
console.log(arr);
}
test1();

 

结果也是为:

 

 

 

以上是关于用JS实现对每一项为数值的数组进行排序的主要内容,如果未能解决你的问题,请参考以下文章

数组的排序

js_Array类型_迭代方法

JS数组方法some()和every()的区别

使用 handlebars.js 模板以数组中的最后一项为条件

js数组的五种迭代遍历方式 every filter forEach map some

JS中数组重排序方法