使用if/else的代码方式编写
function fileterNum(num1,num2,action) {
if (action === 'add') {
return num1 + num2
}else if (action === 'edit') {
return num1 - num2
}else if(action === 'delete') {
return num1 * num2
}else if (action === 'divide') {
return num1 / num2
}else {
return '不符合提示'
}
}
使用Object的方式改造
function NumWithObject(num1,num2,action) {
const actions = {
add: (a,b) => a + b,
subtract: (a,b) => a - b,
multiply:(a,b) => a * b,
divide: (a,b) => a / b
}
// ?.判断函数是否存在,如果存在就调用,否则返回默认的字符串
return actions[action]?.(num1,num2) ?? '不符合提示'
}