【提问】关于数组排序的思考?????
自己做个测试:
JScript code
            function test()
            {
              var str="1,3,2,5,10,4,7,6"; 
              var s=str.split(',');
              alert(s.sort(function(a,b){ alert(a+","+b);return b-a;}));
            }
弹出的信息是:
6,5  4,7, 4,2  5,10 5,3  3,2 2,1 3,2
2,6, 4,7  4,6  3,4  3,7  5,10 5,7  5,4
4,6  5,6  5,10 7,10 7,6  6,10 7,10
最后结果:10,7,6,5,4,3,2,1
问题:
传入函数中a,b的值是随机的吗? 应该不是吧 因为每次执行,显示信息一样.
如果不是,那按什么规律传的呢?
------解决方案--------------------楼主,您理解可能错了。
function(a,b)只是一个比较函数。
js内置引擎在比较数值的时候,也是与我们普通的冒泡算法是一样的。即索引递归比值。
因此弹出的信息是一样的。
具体你可以参考javascript的数组方法。
------解决方案--------------------学习