Emberで簡単なランキングアルゴリズムを作成する必要があります。 Emberモデルの配列を取って、序列を生成する必要があります。序数は、同じランクを割り当て、それに応じて結合ランクをスキップします。各配列の項目数は少ないので、パフォーマンスは重要な考慮事項ではありません。私は可能な限りEmberのイディオムを維持したいと思います。Emberランキングアルゴリズム
例:次に
// models/competition.js
export default Model.extend({
competitors: hasMany('competitor')
ranks: computed.[ranking function here]
});
// models/competitor.js
export default Model.extend({
name: attr('string'),
score: attr('number'),
competition: belongsTo('competition')
rank: computed.[return rank here]
});
、以下の競合他社、得点与えられた次のように私は返すようにrank
計算プロパティを希望
Alpha, 100
Beta, 90
BetaPrime, 90
BetaDoublePrime, 90
Gamma, 80
を:
Alpha, 1
Beta, 2
BetaPrime, 2
BetaDoublePrime, 2
Gamma, 5
私はPythonでこれを行うことができますが、私はEmber/Javascriptには新しく、これを理解することはできません。マップ/リダクションのいくつかの組み合わせが鍵だと思うが、それ以外の場合は断りなくてもいい...ありがとう。
これは、同じランクをネクタイに割り当てるという重要な機能を実装していません。 – dbinetti
@dbinetti私は答えを – jcbvm
に更新しました(より正確に編集された要件:) ありがとうございますが、結果は次のようにスキップされます。ベータ、2; BetaPrime、2; BetaDoublePrime、2; Gamma、5;この答えは 'Alpha、1;ベータ、2; BetaPrime、2;ガンマ、3; ' – dbinetti