嵌套判断太多,应该怎么处理
node js 里面嵌套太多了,看着就烦,应该怎么样来改写呢??比如: if(){ if() { if() { if() { if() { … } } } } } 如果进行条件判断,怎么样来改写,看着舒服一点呢????
10 回复
if (bool) {
...
}
改成类似
if (!bool) {
...
return;
}
@steambap 能不能具体一点???谢谢
错误优先回调。。如果错误直接返回。。。
来自酷炫的 CNodeMD
下面这个链接,能完美的回答你的问题 http://suo.im/1F0kM2
- 错误优先返回。
- 每个分支的代码,抽离为一个函数
- 将各种条件放入一个map里面,条件为key,value为函数
错误优先返回 不还是这么多判断吗
@dengnan123 错误优先返回虽然一样要很多判断,但不需要嵌套
@qinyang1980 再补充2个
- switch
- 策略模式
if (bool_1) {
if (bool_2) {
if (bool_3) {
...
}
}
}
//可以改写成如下代码
if (!bool_1) {
return false;
}
if (!bool_2) {
return false;
}
if (!bool_3) {
return false;
}
//...
@quanpf2481 这样和你的效果一样
条件语句较统一时,使用switch语句代替if 条件语句不统一时,优先书写条件满足直接return的语句