JS代码浏览器运行正常 VSCODE提示多个「预期声明或语句」错误
VS Code 报「预期的声明或语句」错误的触发原因及解决方案
你的代码在浏览器可正常运行,是因为浏览器默认使用非严格JavaScript模式,自动兼容了大量不规范写法,而VS Code内置及插件扩展的语法校验规则通常更严格,报错主要由以下几个原因触发:
- 隐式全局变量问题
代码中for(i = 0; i < toDoList.length; i++)的循环变量i没有使用let/var/const声明,属于隐式创建全局变量,在严格模式下属于语法错误,如果VS Code开启了严格模式相关校验规则就会触发报错。 - 语句末尾缺少分号
代码中大量语句末尾未添加半角分号,虽然JavaScript有自动分号补全(ASI)机制,但如果你的VS Code安装了ESLint、Prettier等校验插件,且规则配置为强制要求语句末尾必须加分号,就会将未加分号的语句标记为语法错误。 - 编辑器语言模式匹配错误
如果当前文件后缀不是.js,或者VS Code右下角误将当前文件的语言模式识别为TypeScript、Java等其他语言,就会出现语法校验不匹配的批量报错。
对应解决方案:
- 补全循环变量声明,将
for(i = 0修改为for(let i = 0 - 给所有语句末尾补全半角分号,或者调整VS Code校验规则,关闭强制分号要求
- 确认VS Code右下角的语言模式为
JavaScript,如果是其他语言点击切换即可
内容的提问来源于stack exchange,提问作者Sam L
相关产品推荐
相关产品推荐

