刚安装Express和Node,运行Hello World遇多类错误求助
Node.js Express Hello World 启动故障排查方案
已出现的错误
1. SyntaxError: Invalid or unexpected token
调用栈信息:
at internalCompileFunction (node:internal/vm:73:18)
at wrapSafe (node:internal/modules/cjs/loader:1153:20)
at Module._compile (node:internal/modules/cjs/loader:1197:27)
at Module._extensions..js (node:internal/modules/cjs/loader:1287:10)
at Module.load (node:internal/modules/cjs/loader:1091:32)
at Module._load (node:internal/modules/cjs/loader:938:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:83:12)
at node:internal/main/run_main_module:23:47
2. MODULE NOT FOUND
已尝试的操作
- 删除并重新安装所有模块
- 添加防火墙规则
- 修改端口号(原设置为
app.listen(3000))
针对性解决步骤
处理 SyntaxError: Invalid or unexpected token
- 检查代码语法细节:排查入口JS文件(如
app.js),确认无中文标点、不可见特殊字符(全角空格、智能引号等)。可将代码复制到ESLint在线工具验证语法合规性。 - 验证Node.js版本兼容性:若代码使用ES6+语法(箭头函数、
import等),运行node -v查看版本,低于v14建议升级,或改用CommonJS规范(require替代import)。 - 检查文件编码:确保JS文件以UTF-8无BOM格式保存,部分编辑器默认添加的BOM头会导致Node解析失败。
处理 MODULE NOT FOUND
- 确认模块安装状态:检查项目根目录下是否存在
node_modules/express文件夹,无则在根目录执行npm install express --save。同时验证package.json的dependencies中是否包含express,缺失则手动添加后重新安装。 - 核对模块引用拼写:确认代码中
require('express')拼写无误,Node模块名区分大小写。自定义模块需检查相对路径是否正确(如是否漏写./)。 - 清理npm缓存:执行
npm cache clean --force后重新安装模块,避免缓存损坏导致的安装不完整。
额外排查点
- 确认启动命令正确:如入口文件为
app.js,需运行node app.js,避免文件名拼写错误。 - 检查项目目录结构:确保所有文件层级正确,无文件误移动导致的路径异常。
内容的提问来源于stack exchange,提问作者Tejas Doiphode
相关产品推荐
相关产品推荐

