[英]Sorting a JavaScript Object by specific property value
如果我有一个 JavaScript 对象,例如:
var currencies= {
"EUR": 100,
"CHF": 15,
"GPB": 75,
"JPN": 116,
"EUR": 12,
"JPN": 15,
"USD": 55,
"CHF": 22,
"USD": 100,
};
有没有办法按照这个特定的顺序对它们进行排序?
var currencies= {
"EUR": 12,
"EUR": 100,
"USD": 55,
"USD": 100,
"GPB": 75,
"CHF": 15,
"CHF": 22,
"JPN": 15,
"JPN": 116,
};
通过使用具有单个键/值对的对象的数组,您可以使用这对按键然后按值进行排序。
var currencies= [{ EUR: 100 }, { CHF: 15 }, { GPB: 75 }, { JPN: 116 }, { EUR: 12 }, { JPN: 15 }, { USD: 55 }, { CHF: 22 }, { USD: 100 }], order = { EUR: 1, USD: 2, GBP: 3, CHF: 4, JPN: 5 }; currencies.sort((a, b) => { var aa = Object.entries(a)[0], bb = Object.entries(b)[0]; return order[aa[0]] - order[bb[0]] || aa[1] - bb[1]; }); console.log(currencies);
.as-console-wrapper { max-height: 100% !important; top: 0; }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.