if语句化繁为简

if语句化繁为简

我们经常会在处理数据时碰到需要把某个值转化成中文,那么这么写的话就会显得有点呆😂

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
let data = res.data.info;
for (let i = 0; i < arr.length; i++) {
if (data.status == "0") {
data.status = "新建";
} else if (data.status == "1") {
data.status = "组长审批";
} else if (data.status == "2") {
data.status = "经理审批";
} else if (data.status == "3") {
data.status = "主管审批";
} else if (data.status == "4") {
data.status = "审批通过";
} else if (data.status == "5") {
data.status = "退回";
}
}
//不过不建议直接改变原数据,可以:
if (data.status == "0") {
data.statusHtml = "新建";
}

经过简化得到:

1
2
3
4
5
6
7
8
9
var htmls={
"0":"新建",
"1":"组长审批",
"2":"经理审批",
"3":"主管审批",
"4":"审批通过",
"5":"退回",
};
data.statusHtml= htmls[data.status] || "";


我们也可以加一些应用场景进去:从外部链接或者卡片点击跳转到审批页,如果在该页面中,该环节已经审批过了的话,alert一个信息框,并返回到主页。

1
2
3
4
5
6
7
8
9
10
11
12
var str=window.location.href;       //获取当前页面url
var statusUrls={
'ZZSP':'apv_zzsp.html',
"JLSP":'apv_jlsp.html',
"ZGSP":'apv_zgsp.html',
};
// res.nowStatus:接口返回数据(ZZSP/JLSP/ZGSP)
if( str.indexOf(statusUrls[res.nowStatus])==-1 ){
alert('审批流程已处理!');
window.location.href='https://index.html';
return;
}

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×