不使用连续if,用对象代替

2021-05-24  本文已影响0人  晓蟲QwQ

当我们处理诸如表单的问题时,可能遇到根据数据状态数转化为文字的情况,这时使用if判断或3元表达式都将显得冗长与阅读困难

let billStr;
const billStatus = res.items.billStatus;
if(billStatus == 10) {
  billStr = "创建中";
} else if(billStatus == 15) {
  billStr = "审核中";
} else if(billStatus == 20) {
  billStr = "已审核";
} else if(billStatus == 25) {
  billStr = "待确认";
} else if(billStatus == 30) {
  billStr="已完成"
}

如上代码所示,使用连续的if进行状态判断,显得代码冗长,且阅读麻烦。尝试使用如下方式改进

var enumstatus = { 10: '创建', 15: '审核中', 20: '已审核', 25: '待确认',30:'已完成'};
var text = enumstatus[res.items.billStatus];

只需两行代码解决一长串if问题

上一篇下一篇

猜你喜欢

热点阅读