我有一个带有两个数组的 javascript 对象,如图所示,
var Object = {'name': [Matt, Tom, Mike...], 'rank': [34,1,17...]};
我试图按排名 1,2,3.. 排序,但保留与排名相关的名称。
Object.name[0] // tom
Object.rank[0] // tom's rank of 1.
我应该重新配置我的对象以使排序更容易吗?
我目前正在使用
Object.rank.sort(function(a,b){return a-b});
来排序排名,但名称并不与之相关。
感谢所有帮助。谢谢!
是的,重新配置。假设你有这个:
var people = [{name:"Matt", rank:34}, {name:"Tom", rank:1}, {name:"Mike", rank:17}];
然后你可以这样排序:
people.sort(function(a, b) {
return a.rank - b.rank;
}
Edit
由于您有并行列表,只需将它们压缩在一起即可:
var people = [];
for (var i = 0; i < Object.name.length; i++) {
people.push({name:Object.name[i], rank:Object.rank[i]});
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)