注册 登录
编程论坛 JavaScript论坛

求教sort函数的问题

devilqin 发布于 2012-06-13 16:19, 670 次点击
只有本站会员才能查看附件,请 登录

        var queue = ["red","green","yellow","purple"];
        queue.splice(1, 2 , "white,black,blue");
        alert(queue.sort().toString()); //output  "purple,red,white,black,blue",这里输出为啥不是按首字母排列?

[ 本帖最后由 devilqin 于 2012-6-13 16:21 编辑 ]
3 回复
#2
aspic2012-06-14 22:12
按照 ASCII 字符顺序进行升序排列
#3
aspic2012-06-14 22:17
<script>
var queue = ["red","white","black","blue","green","yellow","purple"];
//queue.splice(1, 2 , "white,black,blue");
alert(queue.sort().toString()); //output  "black,blue,green,purple,red,white,yellow"
</script>
#4
hibill2012-06-16 16:22
回复 楼主 devilqin
因为的的splice的第三个参数错了,
你那样的写法是将"white,black,blue"看成一个整体,
如果写成这样:
queue.splice(1, 2 , "white","black","blue");
就不会发生排序错误了;
 var queue = ["red","green","yellow","purple"];
 queue.splice(1, 2 , "white","black","blue");
 alert(queue.sort().toString());
//black,blue,purple,red,white
1