сортировка массива localStorage - PullRequest
0 голосов
/ 26 апреля 2018

При написании основной игры для моего школьного проекта я столкнулся с проблемой, пытаясь сохранить и отсортировать массив рекорд , я считаю, что использование localstorage - правильный способ Впрочем, поскольку сам массив состоит из имени и оценки, у меня возникли проблемы при ее сортировке.

https://jsbin.com/fagupohozo/1/edit?js

    allPlayers = {};

function showScore(){
    getStoragePlayer();
    addPlayer();
    setStoragePlayer();
}

function addPlayer(){ //Adds a player to the array with score and name
    allPlayers[prompt("What's your name")] = score;
}

function setStoragePlayer(){ // Sends the array to the cloud for saving
    localStorage.setItem("PlayerArray", JSON.stringify(allPlayers));
}

function getStoragePlayer() { // Downloads the array from the cloud
    if (localStorage.PlayerArray != null) {
        allPlayers = JSON.parse(localStorage.getItem("PlayerArray"));
    }
}

1 Ответ

0 голосов
/ 26 апреля 2018

Вы можете добавить allPlayers как массив объектов, таких как

allPlayers = [
  {name:"John", score:20},
  {name:"Smith", score:40}
]

, а затем отсортируйте его по количеству очков, чтобы получить высокий балл, а также имя этого игрока в отсортированном массиве

var allPlayers = [
      {name:"John", score:20},
      {name:"Smith", score:40}
    ];

    var sortedPlayers = allPlayers.sort(function(a, b){
      return b.score - a.score
    });
    console.log(sortedPlayers);

"sortedPlayers" будет содержать отсортированный массив с самым высоким счетом в верхней части

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...