fiz a minha usando um mapeamento.
function adicao(a, b) {
return a + b;
}
function subtracao(a, b) {
return a - b;
}
function multiplicacao(a, b) {
return a * b;
}
function divisao(a, b) {
if (b !== 0) {
return a / b;
} else {
return "Erro: divisão por zero.";
}
}
function calculadora(operacao, a, b) {
const acoes = {
soma: adicao,
menos: subtracao,
vezes: multiplicacao,
divisao: divisao
};
if (acoes[operacao]) {
return acoes[operacao](a,b);
} else {
return 'operação invalida';
}
}
console.log(calculadora('soma', 11, 5));
console.log(calculadora('vezes', 4, 2));
console.log(calculadora('divisao', 2, 2));