您的位置:首页 > Web前端 > JavaScript

程序复杂条件分支逻辑的一种写法(js)

2017-07-13 10:48 405 查看
// 文案根据type-status两个变量确定
let txt = ''
if (type === '0' && status === '4') {
txt = '04040404'
} else if (type === '0' && status === '7') {
txt = '07070707'
} else if (type === '0' && status === '9') {
txt = '09090909'
} else if (type === '2' && status === '7') {
txt = '27272727'
} else if (type === '2' && status === '9') {
txt = '29292929'
} else if (type === '1' && status === '4') {
txt = '14141414'
} else if (type === '1' && (status === '7' || status === '9')) {
txt = '17191719'
}

// 以下风格更易理解,有效降低程序圈复杂度
const txt1 = ({
'0-4': '04040404',
'0-7': '07070707',
'0-9': '09090909',
'1-4': '14141414',
'1-7': '17191719',
'1-9': '17191719',
'2-7': '27272727',
'2-9': '29292929',
})[`${type}-${status}`]


如果条件分支包含逻辑代码,而非简单赋值。可以包装成匿名函数。

({
'0-4': () => { /*.一些逻辑.*/ console.log('04040404') },
'1-4': () => { /*.一些逻辑.*/ console.log('14141414') },
})[`${type}-${status}`]()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript