繁体   English   中英

Microsoft JScript 运行时错误:代码:800A1391 在运行 node.js 程序时未定义“控制台”

[英]Microsoft JScript runtime error : Code : 800A1391 'console' is undefined while running node.js program

我是 node.js 的新手。 在 Windows 机器上安装 node.js 后,我创建了一个名为 myFirst.js 的文件。 该文件如下所示:

console.log("Sweet .. Welcome to Node.js"); 

但是当我尝试导航到该目录并执行该文件时,它会引发如下错误: 在此处输入图片说明

甚至像这样的命令

在此处输入图片说明

不管用。 我错过了什么? 我将如何执行我的第一个 node.js 代码块?

HALAR 的有用回答

  • 解释了*.js文件默认由 Microsoft 过时的WSHWindows 脚本主机)JavaScript 引擎( JScript )而不是 Node.js 执行

  • 并且将 Node.js *.js脚本直接传递给node.exe可执行文件可确保其正确执行

或者,您可以重新配置文件扩展关联,以便默认情况下使用 Node.js 引擎执行*.js文件

  • 打开 PowerShell 控制台窗口。

  • 执行以下操作,更改 Windows 注册表中.js扩展名的关联(仅对当前用户帐户生效,但相反,不需要提升):

New-Item -Force HKCU:\SOFTWARE\Classes\NodeJSFile\shell\Open\Command -Value "`"$((Get-Command node.exe).Source)`" `"%1`" %*"
New-Item -Force HKCU:\SOFTWARE\Classes\.js -Value 'NodeJSFile'

从那时起,直接调用*.js文件将使用 Node.js ( node.exe ) 执行它们。

但是请注意,您必须在每台希望以这种方式运行的机器上执行此操作。

您必须在 *.Js 文件的执行前加上节点可执行文件以添加上下文,就像在说,“使用节点脚本引擎打开此文件,而不是默认的 Microsoft 脚本引擎,它无法识别‘控制台’目的。”

因此,不要简单地提供 .Js 文件的名称,如下所示:

myFirst.js

将其更改为:

node myFirst.js

*.js 文件的名称充当节点可执行文件的参数,然后执行该文件,为您提供“Sweet.. Welcome to Node.js”语句。

要回答这个问题,首先我们需要了解错误是由Windows Script Host执行引起的。

现在,使用以下语法从cmd 提示符运行代码:

>node myFirst.js

或者

>node <application_name>.js

这将允许 Node.js 应用程序通过V8 JavaScript 引擎(Google 的)打开。

PS:如果这有助于解决您的问题,请回复,否则请在尝试此操作后发布您面临的问题。

我在尝试运行NodeJs 脚本时遇到了这个错误,我用类似于“node”命令的名称保存了脚本

节点.js

当我试图跑步时

node node.js

抛出错误 Jscript 运行时错误

所以我只是用其他类似的名称替换名称,同时删除名称为 node.js 的脚本

nodescript.js

然后它起作用了。

我的示例hello_word.js在 Windows 8 中hello_word.js了同样的问题:

  1. 所以我把node js 7.7.2 vesion安装在D盘,因为安装在c盘时存在权限和系统安全问题,所以在c盘工作比较困难
  2. 当我完成了安装向导,我的午餐“CMD”然后我改变我的位置d:/ nodejs使用cd d:/nodejs
  3. 那么有两个问题:

    1. 执行node hello_word.js
    2. 或者首先执行node ,所以现在你在 node 会话中,然后执行requiere('./hello_word.js')

祝你好运

请参阅这篇文章在节点文件的开头“/usr/bin/env node”究竟做了什么?

您需要将#!/usr/bin/env node到脚本的开头。 这甚至适用于 Windows。

请删除程序文件路径中是否有node.js文件。

在下面的目录或文件夹(文件路径)中存在node.js文件。

C:/Education/Node/node.js 

删除node.js

然后在文件 myFirst.js 文件路径中的命令提示符下运行

node myFirst.js

不要使用 node js 作为文件名,只需将 node.js 文件名重新命名为其他并尝试

如果您仍然收到“'node' 未被识别为内部或外部命令、可运行的程序或批处理文件”。 在 Windows 上 node yourjsfile.js 命令后出错

输入 node 并先输入然后输入 .load .\\yourjsfile.js 并再次输入

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM