二维数组元素排序
Posted kikia
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二维数组元素排序相关的知识,希望对你有一定的参考价值。
<script type="text/javascript">
//--------------------------1数值排序-------------------------
var arr1=[[22,33,44],[1,0,6,2],[33,10],[10,5]];
arr1.sort(function(x,y){
return x[1] -y[1];//按照二维数组arr1中每个数组元素(数组)的第二个元素升序排列
});
console.log(arr1);
//--------------------------2字符串排序-------------------------
var arr2 = [[‘中‘, ‘国‘], [‘啊‘, ‘的‘], [‘哦‘, ‘的‘],["aa","ee"]];
arr2.sort(function(x, y){
return x[0].localeCompare(y[0]);
//localeCompare作用:用本地特定的顺序来比较两个字符串。
//说明比较结果的数字。如果 stringObject 小于 target,则 localeCompare() 返回小于 0 的数。
//如果 stringObject 大于 target,则该方法返回大于 0 的数。如果两个字符串相等,或根据本地排序规则没有区别,该方法返回 0。
});
console.log(arr2);
//--------------------------3-------------------------
var arr=[["e","2","g"],["b","3","c"],["a","1","a"],["d","4","h"]]
arr.sort(sortfunction);
console.log(arr[0] + "" + arr[1] + "" + arr[2] + "" + arr[3])// 排序方法中有两个参数,表示数组中两个用来排序的元素
//
function sortfunction(x,y)
{
return x[2].charCodeAt(0) - y[2].charCodeAt(0);//根据二维数组的第三列的第一个字母的ASCII码来降序排序
//charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。
//方法 charCodeAt() 与 charAt() 方法执行的操作相似,只不过前者返回的是位于指定位置的字符的编码,而后者返回的是字符子串。
}
</script>
http://blog.csdn.net/wyodyia/article/details/7386426
以上是关于二维数组元素排序的主要内容,如果未能解决你的问题,请参考以下文章