Javascript 为什么不是';这个排序功能在Safari中不起作用吗?
我编写了一个函数,它根据每个子数组的第二个元素对数组进行排序。例如: 分类:Javascript 为什么不是';这个排序功能在Safari中不起作用吗?,javascript,arrays,sorting,safari,Javascript,Arrays,Sorting,Safari,我编写了一个函数,它根据每个子数组的第二个元素对数组进行排序。例如: 分类: var x = [['car', 10], ['dog', 20], ['horse', 2]] 应该返回[['dog',20],'car',10],'horse',2]] 我在Chrome和Firefox中尝试了这个功能,效果很好。出于某种原因,当我在Safari中尝试时,结果数组没有排序。为什么会发生这种情况?我能做些什么来修复它 以下是函数: x = x.sort(function(a,b){ r
var x = [['car', 10], ['dog', 20], ['horse', 2]]
应该返回[['dog',20],'car',10],'horse',2]]
我在Chrome和Firefox中尝试了这个功能,效果很好。出于某种原因,当我在Safari中尝试时,结果数组没有排序。为什么会发生这种情况?我能做些什么来修复它
以下是函数:
x = x.sort(function(a,b){
return a[1] < b[1];
})
x=x.sort(函数(a,b){
返回a[1]
您需要返回一个小于零、零或大于零的值。请参阅文档
此方案返回经过精确比较的项目值的差异。当排序符在下降时,我们需要从b中减去a的值
function(a, b){
return b[1] - a[1];
});
例如:
varx=[['car',10],'dog',20],'horse',2];
x、 排序(功能(a、b){
返回b[1]-a[1];
});
document.write(''+JSON.stringify(x,0,4)+'')代码>好的,谢谢,可以了。你知道为什么它可以在Chrome/Firefox上运行,但不能在Safari上运行吗?请阅读文档:。