< BACK
Javascript tips, tricks and code snippets
Javascript: sort an object property by values
Adapted from this posting:
let maxSpeed = {
car: 300,
bike: 60,
motorbike: 200,
airplane: 1000,
helicopter: 400,
rocket: 8 * 60 * 60
};
let sortable = Object.keys(maxSpeed).map(vehicle => [maxSpeed[vehicle], vehicle]);
sortable.sort((a,b) => b[0] - a[0]);
//JSON.stringify(sortable, null, 2);
let sorted = {};
sortable.forEach(item => sorted[item[1]] = item[0]);
JSON.stringify(sorted, null, 2);
outputs
{
"rocket": 28800,
"airplane": 1000,
"helicopter": 400,
"car": 300,
"motorbike": 200,
"bike": 60
}