Microsoft JScript运行时错误:代码:800A1391'console'在运行node.js程序时未定义

时间:2015-11-28 19:10:03

标签: javascript node.js

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

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

但是当我尝试导航到该目录并执行该文件时,它会抛出如下错误: enter image description here

甚至像

这样的命令

enter image description here

无效。我错过了什么?我该如何执行我的第一个node.js代码块?

9 个答案:

答案 0 :(得分:6)

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

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

myFirst.js

将其更改为:

node myFirst.js

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

答案 1 :(得分:3)

要回答这个问题,首先我们需要了解错误是由于 Windows脚本宿主正在执行错误引起的。

现在,使用以下语法运行 cmd promt 中的代码:

>node myFirst.js

>node <application_name>.js

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

P.S:请回复一下,如果这有助于解决您的问题,请在尝试之后解决您遇到的问题。

答案 2 :(得分:2)

HALAR's helpful answer

  • 解释说, *.js文件默认由Microsoft的过时的 WSH Windows Script Host)JavaScript引擎执行( JScript )而不是Node.js

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

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

  • 打开PowerShell控制台窗口。

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

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)执行它们。

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

答案 3 :(得分:1)

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

  

node.js

当我尝试运行

node node.js

抛出错误Jscript运行时错误

所以我只是将名称替换为其他名称,也删除名称为node.js的脚本

  

nodescript.js

然后它起作用了。

答案 4 :(得分:0)

我在Windows 8中遇到与我的示例hello_word.js相同的问题:

  1. 所以我在磁盘7.7.2 vesion中安装节点js D,因为在磁盘c中安装时存在权限和系统安全问题,因此工作起来比较困难磁盘c
  2. 当我完成安装向导后,我午餐“cmd”,然后使用d:/ nodejs
  3. 将我的位置更改为cd d:/nodejs
  4. 然后有两个问题:

    1. 执行node hello_word.js
    2. 或者首先执行node,现在您进入节点会话,然后执行requiere('./hello_word.js')
  5. 祝你好运

答案 5 :(得分:0)

请参阅此帖子What exactly does "/usr/bin/env node" do at the beginning of node files?

您需要将#!/usr/bin/env node添加到脚本的开头。这甚至可以在Windows上使用。

答案 6 :(得分:0)

请删除程序文件路径中的任何node.js文件。

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

C:/Education/Node/node.js 

删除node.js

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

node myFirst.js

答案 7 :(得分:0)

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

答案 8 :(得分:0)

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

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