JavaScript条件判断使用多个else块导致代码无法运行该如何解决
JavaScript代码问题排查
语法错误(导致代码无法运行的核心原因)
- 一套
if/else if判断逻辑仅允许存在最多1个最终兜底的else分支,你的代码在greeting = "Good Morning";对应的else分支后,又额外添加了一个else分支,完全不符合JS语法规范,运行时会直接抛出语法错误。
其他不规范问题
- 第一个
if (hours > 18)分支内的赋值语句末尾漏写分号,虽然JS的自动分号补全机制不会直接触发报错,但不符合编码规范,存在隐藏风险。
修复后代码示例
你可以根据实际业务逻辑调整判断条件,以下是符合语法规范的参考写法:
/*if statements below*/ let greeting; // hours变量需提前完成赋值 if (hours > 18) { greeting = "Good Evening"; } else if(hours > 12) { greeting = "Good Afternoon"; } else if (hours >= 5) { greeting = "Good Morning"; } else { greeting = "Welcome Night Owl"; }
内容的提问来源于stack exchange,提问作者Gus05
相关产品推荐
相关产品推荐

