Actually there is JSON code:

"1": { "username": "Игрок", "balance": 228, } 

There are many such cells and they are all with different numbers, which, in turn, are in no way connected with each other.

Then I go this way:

  var top = []; var fs = require('fs'); var contents = fs.readFileSync("./accounts.json", 'utf8'); template = JSON.parse(contents); const arr = Object.keys(template); for (var i = 0; i < arr.length; i++) { top[top.length] = { "balance": template[arr[i]].balance, "name": template[arr[i]].username } } 

And you need to sort the top array by balance in each cell of the array.

It should look like this:

It was:

  [ "1": { "username": "Игрок", "balance": 228, }, "123": { "username": "Игрок", "balance": 0, } ] 

It became:

  [ "123": { "username": "Игрок", "balance": 0, }, "1": { "username": "Игрок", "balance": 228, } ] 

    1 answer 1

     var contents = `{ "1": { "username": "Игрок", "balance": 228 }, "2": { "username": "Игрок", "balance": 5 }, "3": { "username": "Игрок", "balance": 1457 } }`; var tops = []; var template = JSON.parse(contents); var arr = Object.keys(template); for (var i = 0; i < arr.length; i++) { tops[tops.length] = { "balance": template[arr[i]].balance, "name": template[arr[i]].username } } var res = tops.sort(function(a, b){ return +a.balance - +b.balance; }); console.log(res);