You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JS简单if else代码报Declaration or statement expected错误原因

问题根因

代码存在两处语法错误,直接触发「Declaration or statement expected」报错:

  • 常量声明关键字使用错误:JavaScript 中没有constant这个变量声明关键字,声明常量的正确关键字是const,拼写错误会直接导致语法解析失败。
  • 条件语句末尾多写了分号:你在if (bill > 50 && bill < 300)、else if (bill < 50 || bill > 300)两个条件的闭合圆括号后都加了分号;。JS 语法中分号代表单条语句结束,这意味着if/else if语句在分号位置就已经终止,后面紧跟的大括号会被识别为独立的普通代码块,后续的else if、else分支找不到匹配的前置if结构,解析器就会抛出语法错误。

额外逻辑提示:当前判断条件没有覆盖bill=50、bill=300两个边界值,这两个值会走到else分支输出No tip,如果业务规则要求50-300区间(含边界)按15%计算小费,需要调整条件中的比较运算符。

修正后可运行代码
const bill = 275;
let tip = 0;
let total = 0;
if (bill > 50 && bill < 300) {
  tip = 0.15 * bill;
  console.log("tip", tip, "bill", bill)
} else if (bill < 50 || bill > 300) {
  tip = 0.20 * bill;
  console.log("tip", tip, "bill", bill)
} else {
  console.log("No tip")
}
total = bill + tip;
console.log("total", total)

上述代码运行后正常输出结果:

tip 41.25 bill 275
total 316.25

内容的提问来源于stack exchange,提问作者Abhishek yadav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 11:51:18