继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

javaScript 新方向 (8)

慕的地10843
关注TA
已关注
手记 1081
粉丝 200
获赞 961

我们开发过程中少不了会用到分支语句,有时候可能为了更好扩展性和易维护性会考虑使用策略模式来代替分支语句,不过每种语言都提供了对分支语句支持,我们看一看下面 javascript 中的分支语句,在分支语句我们必须通过 break 在输入条件满足我们定义一种情况后跳出循环。

webp

如果我们忘记写 break 的话,我们在 printSwitchedValue 输入 2 时候,在满足条件后就会顺序执行下去,打印出 two three default。

webp

webp

我们试图尝试其他方式来实现同分支语句相同作用还能避免犯分支语句同样错误,我们重构一下代码,我们用三目运算来一层一层实现。

webp

这样虽然避免在分支语句发生一些问题,但是我们看这样写的是有局限性,无法写一些复杂的逻辑。性能也应该是一个问题。然后尝试其他途径来实现分支语句功能,我们定义 values 对象,然后通过输入类型,我们在对象 values 找对应属性,如果找到属性就对应返回值。如果没有找到就返回默认值。

webp

但是作为 developer 一个写 bug 的人我们难免会犯下面错误。如果我们将某一个属性值 false null 或 undefined 就可以得到 default 默认值

webp

webp



作者:zidea
链接:https://www.jianshu.com/p/284f30a1dd24


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP