逻辑复杂使用了多个if...else...怎么优化

2019-07-09  本文已影响0人  柳宁依

最近在做一个激活卡券的需求,其中有一小部分是需要输入开始卡券编码和截至卡券编码,以及一个位数来搜索符合条件的卡券。示例:输入abcdef123、abcdef130、3将会搜索出卡券编码为abcdef124、abcdef125、abcdef126、abcdef127、abcdef128、abcdef129、abcdef130的卡券。

作为一个前端,我以为画好页面,然后在点击确定按钮的时候调用接口并将这三个参数传过去就好了,写完了我就坐等后端的接口了。但是后来我才发现自己漏掉了一个验证,这是我之前没有考虑到的,可能因为刚开始工作,思维还不是很严谨吧。

应该在满足以下几个条件的情况下才是符合要求的数据,去请求接口。1、位数不能大于编码长度,2、卡券编码的前缀必须一样,3、卡券编码的后缀必须为数字,且截止编码后缀要大于开始编码。每一种情况都要进行对应的错误提示。

以后一定要多多注意这样的情况,不能只看到了表面,从逻辑和场景上都要想清楚,免得事后又来补漏洞。

然后我写了如下的代码,但是发现判断条件太多,嵌套了好几层if...else...看着特别的冗余,想了半天也没想到有什么比较好的办法可以优化一下,不知哪位大佬可以指点一下。

三个参数分别是begin、end、length
上一篇下一篇

猜你喜欢

热点阅读