您的位置:首页 > Web前端 > JavaScript

JavaScript中不同类型数据的排序方法

2012-02-21 10:50 661 查看
问题:在html中编写网页,一个table,需要按列对table进行排序。

方法:使用JavaScript自带的sort函数进行排序。

注意:在html文件中,所有的函数及操作均应写在

<script type="text/javascript">

</script>

中,直接在<body></body>中写函数是无法执行的。

实例代码:

1.整数类型排序

<script type="text/javascript">

function sortNumber(a, b) {

return a - b

}

var arrNum = new Array(6);

arrNum[0] = "6";

arrNum[1] = "4";

arrNum[2] = "5";

arrNum[3] = "3";

arrNum[4] = "1";

arrNum[5] = "2";

<!--下面为排序过程,调用了前述的sortNumber函数,采用冒泡排序的方法-->

arrNum.sort(sortNumber);

<!--排序不产生新的数组,直接将原数组替换为排序后的数组,调用排序后数组元素的表达式为 arrNum.sort(sortNumber)
,n为数组下标-->

<!--显示排序后数组的第一个元素,下标为0-->

document.write(arrNum.sort(sortNumber)[0]);

</script>

2.英文字符类型排序

<script type="text/javascript">

var arrNam = new Array(6);

arrNam[0] = "b";

arrNam[1] = "a";

arrNam[2] = "e";

arrNam[3] = "d";

arrNam[4] = "c";

arrNam[5] = "f";

<!--下面为排序过程-->

arrNam.sort();

<!--其他与整数类型排序类似-->

</script>

3.中文字符排序,涉及到编码问题,使用sort函数不能得到按拼音排序的结果。

<script type="text/javascript">

var arrSource = new Array(6);

arrSource[0] = "风";

arrSource[1] = "景" ;

arrSource[2] = "这" ;

arrSource[3] = "边" ;

arrSource[4] = "独" ;

arrSource[5] = "好" ;

<!--下面为排序过程,调用localeCompare()函数,使用本地编码方式进行排序-->

arrSource.sort(function (a, b) { return a.localeCompare(b) });

<!--其他与整数类型排序类似-->

</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息