我在一个对象中设置了一个数组数组,我在这个对象中存储了本地存储。以{'0':[[score,time],[score,time]}
格式的Phonegap游戏获得高分,其中0是该类别。我可以使用a[1][0]
查看分数。我想先用高分排序。
var c={'0':[[100,11],[150,12]};
c.sort(function(){
x=a[0];
y=b[0];
return y-x;
}
但是,b [0]总是给出一个未定义的错误。
我是Javascript的新手,这是我作为学习经历的第一次重大测试。虽然我已经看过stackoverflow上的一些例子但仍然无法想出这个。
答案 0 :(得分:7)
您需要将参数声明为比较器函数。
c.sort(function(){
应该是
c.sort(function(a, b){
你需要在数组上调用sort
,因为“我不是我”指出所以
var c={'0':[[100,11],[150,12]]};
c[0].sort(function(a, b){
var x=a[0];
var y=b[0];
return y-x;
});
将c
留在以下状态:
{
"0": [
[150, 12],
[100, 11]
]
}
答案 1 :(得分:0)
function largestOfFour(arr) {
for(var x = 0; x < arr.length; x++){
arr[x] = arr[x].sort(function(a,b){
return b - a;
});
}
return arr;
}
largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);
答案 2 :(得分:0)
var myArray = [ [11, 5, 6, 3, 10], [22,55,33,66,11,00], [32, 35, 37, 39], [1000, 1001, 1002, 1003, 999]];
_.eachRight(myArray, function(value) {
var descending = _.sortBy(value).reverse();
console.log(descending);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.js"></script>