У меня есть объект, назовем его «Пассажиры», который содержит список имен в соответствии с их рангом по умолчанию.Ex.-
Passengers {
P1 : {Ticket Price:<x>, Distance:<x> ---},
P2 : {Ticket Price:<x>, Distance:<x>---},
|
|
Pn : {Ticket Price:<x>, Distance:<x>---}
}
Теперь, основываясь на некоторых данных, я меняю рейтинг списка пассажиров и сохраняю их в новом объекте.Вход будет решаться динамически пользователем.Как пользователь может сказать, что я хочу ранжироваться на основе цены билета, расстояния и т. Д.
Подвох здесь в том, что пользователь может вернуться и вернуться в любое состояние рейтинга в любое время.Например.- Пользователь сначала просит ранжировать по расстоянию, затем просит ранжировать по цене билета, затем снова просит ранжировать по расстоянию.В этом сценарии, когда пользователь снова попросил ранжировать список по расстоянию, я не хочу пересчитывать логику ранжирования, поскольку это дорогостоящее дело.Критерии ранжирования могут быть многими и также определяются динамически.Наиболее простой подход для повторного использования заключается в сохранении этих объектов на карте, где ключ - это критерии ранжирования, а значение - соответствующий объект.
Существует ли в Javascript шаблон проектирования или лучший способ, с помощью которого он может быть достигнут более понятным способом.Я прошел шаблон состояния объекта и дизайна Memento, но он не имеет особого смысла для этого требования.
Любые предложения.