在VS Code终端运行Express代码时遇SyntaxError: missing ) after argument list错误
解决Express代码中的SyntaxError: missing ) after argument list错误
你碰到的这个语法错误,核心原因是**箭头函数(() => {})**的兼容性问题。你在app.listen里使用了ES6的箭头函数语法,但如果你的Node.js版本低于v6.0(ES6特性全面落地的版本),旧版本的Node解析器会识别不了这个语法,进而抛出“参数列表后缺少)”的错误(本质是解析箭头函数失败后误报了错误位置)。
给你两种快速修复的方案:
方案1:替换箭头函数为传统function语法
这是最稳妥的兼容方案,不需要升级Node版本:
var express = require('express'); var app = express(); app.get('/', function(request, response) { response.send("hello world"); }); app.listen(3000, function() { console.log("running on port 3000 "); });
方案2:升级Node.js到支持ES6的版本
如果想保留箭头函数的写法,建议把Node.js升级到v6.0及以上版本(优先选择LTS长期支持版,比如v14、v16或更高),这样就能正常解析ES6语法了。
你可以在终端运行node -v快速查看当前Node版本,要是版本低于v6.0,就会触发这个问题。
内容的提问来源于stack exchange,提问作者dinesh babu
相关产品推荐
相关产品推荐

