什么是多条件短路
形如 if (A && B && C) 这样的多个条件组成的逻辑语句,
通过调整每个因子的顺序,利用短路来实现执行效率的优化。
知乎:逻辑运算符特有的短路效应是什么
链接:https://www.zhihu.com/question/39209736/answer/80208676
口说无凭,真实景模拟测试
首先定义三个逻辑单元:
显而易见, 以上三个逻辑, 返回 true 的概率是逐渐递减的。
我们以此来做实验样本。
以上代码应该比较好懂, 测试|| &&两种情况下,不同的排列顺序对执行效率的影响,
如果实在思路转不过来, 多看几遍代码。
结果:
结论:
多个||条件,把大概率true的条件写最前面,效率更高。
多个&&条件,把小概率true的条件写最前面,效率更高。
为什么?
||遇到true就会短路, 反之,&&遇到false 也会短路。
明白了吗?
完整代码:将上面两段合在一起就是。
FCC成都社区
一个有温度的技术社区
WeChat : fcc-chengdu
官网:https://freecodecamp-chengdu.github.io/
领取专属 10元无门槛券
私享最新 技术干货