Оберните это в функцию.
Это почти всегда правильный ответ, если вы уже довольны и понимаете рабочее решение, но хотите, чтобы оно было короче. Если функция названа правильно, она также начинает создавать самодокументируемый и повторно используемый код. Что может быть лучше?
Даже если вы уверены, что есть более элегантное или эффективное решение, которое вы можете найти - вы все равно можете сначала сделать его вызовом функции, а затем, если появится другое решение, вам нужно всего лишь изменить его в одном месте - само определение функции. Вы даже можете подключить и отключить различные варианты, чтобы проверить надежность в каждом конкретном случае. Что может быть лучше?
Другие могут жаловаться на накладные расходы при вызове функции, но на самом деле это не та стадия разработки, которая является подходящим типом или языком программирования. Отладка неудачной попытки «симпатичной» однолинейной работы в будущем всегда будет перевешивать стоимость красивого, чистого вызова функции. Хорошие решения о чистом API-интерфейсе вызова функций могут позже превратить функции в методы класса, а сами классы могут легко объединить методы кэширования и оптимизации высокого уровня. Оптимизацию вызовов функций на более низком уровне следует оставить языкам нижнего уровня.