[英]Javascript Sort a hash by values in array
我有一个像下面的哈希
a ={
0: [0, "A9"],
2: [0, "A9.4"],
8: [0, "A9.1"],
6: [1, "A9.5"],
5: [0, "A9.2"],
7: [2, "A9.3"]
};
我需要一个与每个Value数组的第二个元素相对应的排序数组。
即,如果我的数组采用a = {key: [value_1_integer, value_2_string]}
我需要按value_2_string
对哈希进行排序,因此结果数组为
result = [0, 8, 5, 7, 2, 6]
您可以通过回调将Array#sort
应用于键,该回调将属性的第二个元素进行排序。
var object = { 0: [0, "A9"], 2: [0, "A9.4"], 8: [0, "A9.1"], 6: [1, "A9.5"], 5: [0, "A9.2"], 7: [2, "A9.3"] }, keys = Object.keys(object).sort(function (a, b) { return object[a][1].localeCompare(object[b][1]); }); console.log(keys);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.