【发布时间】:2012-04-21 13:23:50
【问题描述】:
我对 JS .sort() 函数的理解已经足够好了,而且我对多维数组有一个松散的掌握,但我有点卡住了。这是我得到的:
var player1 = ["bob", 20];
var player2 = ["jon", 40];
var player3 = ["tim", 10];
var scores = [player1[1], player2[1], player3[1]];
scores.sort(sortfunc);
function sortfunc(a,b){
return a - b;
}
alert(scores);
显然这对分数进行了正确排序,但我想要的是根据他们的分数在 alert() 中适当地对玩家姓名进行排序,例如蒂姆,鲍勃,乔恩。我不一定要找人直接发布答案,但在正确方向上的一点提示不会有坏处!
另外,有没有更好的(即更干净、更简单,你有什么)用 jQuery 做这件事的方法?我知道这并不重要,但我只是想知道它在 jQuery 中会是什么样子。
感谢您的阅读。
【问题讨论】:
-
让我澄清一下:您想按照名字对球员进行排序吗?
-
我想对玩家进行排序也可以,是的。我只是希望能够正确地按照谁在第一、第二、第三等名称排序,不管它是如何完成的。
-
我已经添加了一个答案,请看看是否符合您的要求:)
-
你可能想看看 underscore.js,而不是使用 jQuery 来做这件事,它有一堆简洁的函数来处理 javascript 的内置数据结构以及一些函数帮助器。 heres the sortBy documentation
标签: javascript jquery sorting multidimensional-array