2017-01-31 6 views
0

私は現在、各プレイヤーとHTMLページにulを表示している蛇ゲームを持っています。 。私がしようとしているのは、そのリストに最大3つのアイテムを持ち、最高のスコアから最低になるようにすることです。最高の「得点」要素を持つ上位3項目を表示するようにオブジェクト配列をソートしようとしています

蛇を別の配列に並べ替えるだけで、上位3が問題のスコアが最も高いものになります。私はtopSnakes配列内のすべてのヘビを保存することができますが、topSnakes.sortを実行した後に何かを試してみると、undefinedとして戻ってきます。どんな助けもありがとうございます。

+0

[オブジェクトプロパティで並べ替えるJavascriptオブジェクトのリスト]の可能な複製(http://stackoverflow.com/questions/2466356/javascript-object-list -sorting-by-object-property) – rlemon

答えて

1
topSnakes=Object.values(snakes).sort((a,b)=>b.Score-a.Score).slice(0,3); 

最初の3つの要素を取るよりスコア(最大のもの)を後でソートします。あなたの間違いは、私の意見では不必要な最初のループにあります...

+0

Snakesのエラーは未定義ですが、topSnakes = topSnakes.sortを代わりに置く必要がありますか? –

+0

はい、@ RachelDockter、それはあなたが置くべきものです。常に変数名が一致していることを確認してください! – Jhecht

+0

@RachelDockterいいえ、jsはタイプセーフです。申し訳ございません。 –

関連する問題