本文实例讲述了es6中使用地图简化复杂条件判断操作。分享给大家供大家参考,具体如下:
复杂逻辑判断时需要写很多if/else,代码可读性较差,可以用es6新增的地图来简化代码
列举六种实例,逐步简化
/* * *按钮点击事件 * @param{}数量状态活动状态:1开团进行中2开团失败3商品售罄4开团成功5系统取消 */const>/* * *按钮点击事件 * @param{}数量状态活动状态:1开团进行中2开团失败3商品售罄4开团成功5系统取消 */const> const行动={ ' 1 ':‘处理’,‘IndexPage’, ('失败',' 2 ':' FailPage '], “3”:“失败”,“FailPage”, “4”:“成功”、“SuccessPage”, “5”:“取消”、“CancelPage”, “默认”:“其他”、“指数”, }/* * *按钮点击事件 * @param{}数量状态活动状态:1开团进行中2开团失败3商品售罄4开团成功5系统取消 */const> const行动=新地图([ [1,[‘处理’,‘IndexPage]], [2,[‘失败’,‘FailPage]], [3,[‘失败’,‘FailPage]], [4,[‘成功’,‘SuccessPage]], [5,[‘取消’,‘CancelPage]], (“违约”,[“其他”、“指数”]] ])/* * *按钮点击事件 * @param{}数量状态活动状态:1开团进行中2开团失败3商品售罄4开团成功5系统取消 */const> const行动=新地图([ (“guest_1”,()=比;{/*做某事*/}), (“guest_2”,()=比;{/*做某事*/}), (“guest_3”,()=比;{/*做某事*/}), (“guest_4”,()=比;{/*做某事*/}), (“guest_5”,()=比;{/*做某事*/}), (“master_1”,()=比;{/*做某事*/}), (“master_2”,()=比;{/*做某事*/}), (“master_3”,()=比;{/*做某事*/}), (“master_4”,()=比;{/*做某事*/}), (“master_5”,()=比;{/*做某事*/}), (“违约”,()=比;{/*做某事*/}), ])/* * *按钮点击事件 * @param{字符串}身份身份标识:客人客主主态态 * @param{}数量状态活动状态:1开团进行中2开团失败3开团成功4商品售罄5有库存未开团 */const> const行动=新地图([ [{ 身份:“客人”, 状态:1 }()=比;{/*做某事*/}), [{ 身份:“客人”, 现状:2 }()=比;{/*做某事*/}),//? ]) const> const行动=()=比;{ const功能阳极=()=比;{/*做某事*/} const functionB=()=比;{/*做某事*/} 返回新地图([ [/^ guest_[1 - 4]/美元,功能阳极), [/^ guest_5/美元,functionB),//? ]) } const onButtonClick=(身份、地位)=比;{ 让行动=[…行动()]。过滤器(((键,值))=比;(key.test(“${身份}_ ${地位}'))) 行动。forEach(((键,值))=比;value.call(这)) } >之前感兴趣的朋友可以使用:http://tools.jb51.net/code/HtmlJsRun测试上述代码运行效果。
更多关于JavaScript相关内容可查看本站专题:《JavaScript操作DOM技巧总结》,《JavaScript页面元素操作技巧总结》,《JavaScript事件相关操作与技巧大全》,《JavaScript查找算法技巧总结》,《JavaScript数据结构与算法技巧总结》,《JavaScript遍历算法与技巧总结》及《JavaScript错误与调试技巧总结》
希望本文所述对大家JavaScript程序设计有所帮助。
es6中使用地图简化复杂条件判断操作实例详解