大量if else 大家怎么优化的呢 而且后期还有会很多新增的条件 这种大家是怎么优化代码呢
具体场景具体分析
有做过这方面优化吗 能说下你们当时遇到的情况 和解决方案吗?
《代码整洁之道》和《游戏编程模式》两本书能帮到你
一套程序,说白了就是大量if的堆砌,所以你这个所谓的大量,本身其实就很笼统,我赞成2楼的话——没啥可说的
就设计来讲可以用策略模式 但是看你们现在处于项目的什么阶段
还有大量的事情就没必要考虑优化了 先让策划能看到功能才是最主要的
行为树。。
《 JavaScript 设计模式与开发实践》走一遍,找找灵感
策略模式?
话说为啥要改,不影响效率的话,让其他人能看懂业务逻辑不是一件很重要的事儿么
如果频率极高,高到影响性能,那找一个导出工具,把kv表转成if else
如果频率不高,那用一个map存成配置
主要是太多了 每个都有点逻辑 已经很影响代码阅读了
真的太多 就使用二进位来判断所有的if else
第一 if正确 1
第一二 if正确 1+2=3
第一三五 if正确 1+2+16 = 19
00010100
= 否否否是否是否否
提示到这
if else 够底层了吧,想不到有什么可优化的
再多也不可能有成百上千吧
你会这么写代码吗
一三五不是1+4+16么?
而且,1正确了,就进了第一个if,后面两个根本不会进。理论来说,后一个if肯定是前面所有if的条件都为否
1.一三五是我写错了 1+4+16没错
if(a>b && b>c){
ans1();}
a>b先过了 不会进一个新funciton,要两个都过才会进
你的例子应该是
if(a > b) {
} else if(a > b && c > d) {
} else if(a > b && d > f && i > j) {
}
a > b成立后,后面永远不会执行啊
你写的很正确阿 你看看if里面都空的
else记得删掉
if(a > b) {
}
if(a > b && c > d) {
}
if(a > b && d > f && i > j) {
}
用多态封装一下
删掉了else,就不是题主的需求了啊