Mac端VS Code终端运行JS代码报语法错误但浏览器控制台运行正常
错误原因
你遇到的报错是Shell解释器抛出的语法错误,而非JS语法错误:
line 5: syntax error near unexpected token `(' line 5: `const addTwoNums = (numbers, k) => {'
你点击「Run active file」时,VS Code默认调用了Mac系统终端的Shell(默认是zsh或bash)直接执行JS文件,Shell无法识别ES6箭头函数、const等JS专属语法,因此抛出上述报错。浏览器控制台内置了JS解析引擎,所以同一段代码可以正常运行,二者执行逻辑完全不同。
解决方法
首先需要确认你的Mac已经安装了Node.js环境:打开终端输入node -v,如果输出正常的版本号即为已安装,未安装可先通过官方渠道安装Node.js即可。后续运行JS代码可通过以下两种方式操作:
方式1:配置VS Code自动用Node执行JS
- 安装VS Code扩展「Code Runner」
- 打开该扩展的设置页面,找到「Code-runner: Executor Map」配置项,点击编辑进入settings.json文件
- 确保javascript对应的执行程序为node,配置示例如下:
"code-runner.executorMap": { "javascript": "node", // 其余语言的原有配置可保留不变 }
- 配置完成后,在JS文件编辑页右键选择「Run Code」即可正常执行代码。
方式2:手动通过终端执行
无需额外配置VS Code,每次运行时打开终端,cd到当前JS文件所在的目录,执行命令node 你的JS文件名.js即可得到运行结果。
内容的提问来源于stack exchange,提问作者tony
相关产品推荐
相关产品推荐

