Есть ли лучший подход / стиль кодирования для выполнения различных функций при разных условиях без с использованием операторов if?
Я кодировал следующим образом в JavaScript: (например, функция в разных условиях может использовать разные методы выборки из API)
if(answer == 'a'){
foo()
if(answer == 'b'){
bar()
if(answer == 'c'){
bar_2()
if(answer == 'd'){
foo_3()
Я думал об использовании eval()
, но это хороший подход? например, создание объекта состоит из ключей как условий и имен функций как свойства.
conditions:{
a: 'foo',
b: 'bar',
c: 'foo_2',
d: 'bar_2',
}
и запустите его как eval(this.conditions[a])
Но я также слышал, что использование eval
будет затруднительно для тестирования.