JSFiddle - React, Tailwind, and code Playground

HTML

1) Order by "name" ASC
<br><textarea id="log1" rows="8" cols="50"></textarea>
<hr>
2) Order by "population" DESC
<br><textarea id="log2" rows="8" cols="50"></textarea>

JavaScript

//--------------------------------
// Sort Object's Array by key
//   ary   : Array [{},{},{}...]
//   key   : string
//   order : string "asc"(default) or "desc"
//--------------------------------
function ObjArraySort(ary, key, order) {
    var reverse = 1;
    if(order && order.toLowerCase() == "desc") 
        reverse = -1;
    ary.sort(function(a, b) {
		if(a[key] < b[key])
            return -1 * reverse;
		else if(a[key] == b[key])
            return 0;
        else
            return 1 * reverse;
	});
}

//--------------------------------
// Demo Code
//--------------------------------
// Test Array
var prefectures = [
	{name:"Saitama",  population:7237734},
	{name:"Aichi",    population:7444513},
	{name:"Osaka",    population:8850607},
	{name:"Kanagawa", population:9098984},
	{name:"Tokyo",    population:13378584},
];
// 1) Sort by "name" ASC
ObjArraySort(prefectures, "name");
// Output
var log1 = "";
for(var i in prefectures) {
	log1 += i + " : " + prefectures[i]["name"] + " : " + prefectures[i]["population"] + "\n";
}
document.getElementById("log1").value = log1;

// 2) Sort by "population" DESC
ObjArraySort(prefectures, "population", "DESC");
// Output
var log2 = "";
for(var i in prefectures) {
    log2 += i + " : " + prefectures[i]["name"] + " : " + prefectures[i]["population"] + "\n";
}
document.getElementById("log2").value = log2;