Я лично люблю тройных операторов, и, по моему скромному мнению, они делают сложные выражения очень легко усваиваемыми. Возьмите это:
word = (res.distance === 0) ? 'a'
: (res.distance === 1 && res.difference > 3) ? 'b'
: (res.distance === 2 && res.difference > 5 && String(res.key).length > 5) ? 'c'
: 'd';
Однако в нашем проекте правила ESLINT запрещены вложенные троичные операторы, поэтому я должен избавиться от вышеуказанного.
Я пытаюсь найти альтернативы этому подходу. Я действительно не хочу превращать его в огромный оператор if/else, но не знаю, есть ли другие варианты.