Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 排序:是否特定于浏览器_Javascript_Sorting_Browser - Fatal编程技术网

Javascript 排序:是否特定于浏览器

Javascript 排序:是否特定于浏览器,javascript,sorting,browser,Javascript,Sorting,Browser,当我为一组数组值按标题排序时,它在Safari、Chrome和Firefox中给出了3种不同的结果。为什么会这样?我使用了sproutcore框架。我用过 Array.sort(function(a,b){return function2(parameter1,parameter2,parameter3,parameter4)}) function2比较我的keyValuefunction2依次调用另一个比较函数来比较记录的值。此函数根据以下条件返回1、-1或0 record1.localeC

当我为一组数组值按标题排序时,它在Safari、Chrome和Firefox中给出了3种不同的结果。为什么会这样?我使用了sproutcore框架。我用过

Array.sort(function(a,b){return function2(parameter1,parameter2,parameter3,parameter4)})
function2
比较我的
keyValue
function2
依次调用另一个比较函数来比较记录的值。此函数根据以下条件返回
1
-1
0

record1.localeComapre(record2)

你怎么知道你得到了不同的结果

其他人的经验表明,localeCompare的行为在浏览器之间有所不同。例如,参见


如果没有更详细地了解您的比较器是如何工作的,我现在就不能提出更多建议。你可以写一个快速和肮脏的检查后,并确认名单是真正的排序;如果结果是肯定的,那么差异可以归因于localeCompare的怪癖或排序例程的稳定性。

您必须包含实际的比较函数和一组说明问题的样本数据(理想情况下是在工作的JSFIDLE中),以便我们能够提供任何具体信息。谢谢。我从浏览器上看到了截图