私は選択されたキーが選択されているかどうかにかかわらず、季節オブジェクトとselectedSeasonIds
を保持します。オブジェクトから選択したオブジェクトを見つける方法
パフォーマンスを向上させるために、配列をオブジェクトデータ構造にリファクタリングしています。
私は
seasons = {30: 'Fall', 31: 'Spring', 32: 'All'}
selectedSeasonIds = {30: true, 31: false, 32: true}
let output = selectedSeasonIds.????
// {30: 'Fall', 32: 'All'} <- This is my goal
これらのデータを持っている間、私は私が選択したオブジェクトを選択するためのセレクタを使用ONLY選択したシーズンをレンダリングします。しかし、私はそれを使用する利点はありません。私のコードを使用するか、より良いものを作成してください。ここにコードのスニペットがあります
私のセレクタです。
const getSeasons = (seasons, selectedSeasonIds) => {
const selectedSeasons = _.filter(
seasons,
season => _.includes(selectedSeasonIds, season.id)
);
return selectedSeasons;
}
私は、セレクタから
selectedSeasons = SelectedSeasonsSelector(this.state) << getting selector
if(selectedSeasons.length==0) {
return '-'
}
let seasonList = selectedSeasons.map((season) => {
return ' '+season.value;
})
return seasonList
感謝を選択したオブジェクトを取得しています!
なぜオブジェクトのルックアップは、アレイのルックアップよりもパフォーマンスのでしょうか? – Teemu
オブジェクトのルックアップはアレイのルックアップよりもはるかに高速です。遅く触れる不透明の問題がありました。うまくいけば、リファクタリングの後に問題を解決します:) –
私はそれが速くないと確信していますが、JSでもすべて可能です。 – Teemu