我有这样的数组。 asd = [[a,3],[b,1],[c,5],[d,2]];
我想从结果数字中对其进行排序,
asd = [[a,5],[b,3],[c,2],[d,1]];
任何人都知道应用脚本代码吗?
答案 0 :(得分:1)
以下样本怎么样? a,b,c和d用作字符串。这可以在Google Script Editor上执行。
示例脚本:
var asd = [['a',3],['b',1],['c',5],['d',2]];
var result = [[asd[i][0],[i[1] for each (i in asd)].sort(
function(a,b){
if( a > b ) return -1;
if( a < b ) return 1;
return 0;
})[i]] for (i in asd)];
结果:
[[a, 5.0], [b, 3.0], [c, 2.0], [d, 1.0]]
答案 1 :(得分:0)
假设您想要实现的目标,此代码应该有效:
var arr = [["a",3],["b",1],["c",5],["d",2]];
for (var i = 0; i < arr.length; i++){
for (var j = i+1; j < arr.length; j++) {
if (i==arr.length-1) continue;
var thisItem = arr[i],
nextItem = arr[j];
if (thisItem[0] > nextItem[0]) {
var tempL = nextItem[0];
nextItem[0] = thisItem[0];
thisItem[0] = tempL;
}
if (thisItem[1] < nextItem[1]) {
var tempN = nextItem[1];
nextItem[1] = thisItem[1];
thisItem[1] = temp;
}
}
}