【问题标题】:"Syntax error: Invalid or unexpected token" running a script with node.js“语法错误:无效或意外的令牌”使用 node.js 运行脚本
【发布时间】:2018-08-26 08:11:27
【问题描述】:

当我尝试使用节点 js 运行我的 echo.js 文件时,我从终端 (powershell) 收到以下错误消息

PS C:\Users\ASUS\Dropbox\Web Development\Backend\Intro To Node> node echo.js
C:\Users\ASUS\Dropbox\Web Development\Backend\Intro To Node\echo.js:1
(function (exports, require, module, __filename, __dirname) { ��
                                                              ^

SyntaxError: Invalid or unexpected token
    at createScript (vm.js:80:10)
    at Object.runInThisContext (vm.js:139:10)
    at Module._compile (module.js:616:28)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Function.Module.runMain (module.js:693:10)
    at startup (bootstrap_node.js:188:16)
    at bootstrap_node.js:609:3

【问题讨论】:

    标签: javascript node.js unicode byte-order-mark


    【解决方案1】:

    您的 echo.js 文件很可能是 UTF-16LE 编码的,这是 node 不支持的编码。 (�� 是 BOM(Unicode 字节顺序标记)字符,node 误解为 data

    要解决此问题,使用 UTF-8 编码保存echo.js。 虽然您可以选择 UTF-8 没有 BOM,但这不是必需的,最好避免。

    【讨论】:

      【解决方案2】:

      在 Mac 中,使用 TextEdit。转到格式并选择制作纯文本。然后在保存文件时,选择纯文本编码作为自定义编码列表并选择 Unicode (UTF-8) 并取消选择其他所有内容。

      此外,您在复制粘贴代码时会收到此错误。在这种情况下,请确保您替换单个引号,因为复制粘贴代码时格式不同。更换应该会使错误消失。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-21
        • 2023-04-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-11
        相关资源
        最近更新 更多