如何在Windows上运行.js JavaScript文件是最简单的方法?

4
当您尝试运行(而不是编辑)JavaScript文件时,它会给出一个错误,听起来像是代码中缺少引用。例如,我得到了以下错误信息:
Line: 3 Char: 1

Error: 'document' is undefined'

Code: 800A1391

Source: Microsoft JScript runtime error

它是否试图执行类似于VBScript的程序?我需要使用另一个程序来运行它吗?


1
JScript是一个脚本运行引擎,其语法与JavaScript类似(有关诉讼的更长故事请参见https://en.wikipedia.org/wiki/JScript),并且是“.js”文件的默认处理程序。`document`是浏览器JavaScript引擎内可用的全局对象(JScript未定义)。至于如何“运行”它,您可能需要创建一个引用该脚本的`html`文件,并双击该文件。 - Jason Sperske
2
一个脚本需要一个环境来执行某些操作。你的脚本是用来做什么的?显然它需要一个DOM。不能只是“运行一个文件”并期望一切都顺利进行。 - Bergi
1
如果您想要一个更现代的引擎,可以将node.js与.js文件相关联。 - dandavis
3个回答

6

Windows Script Host (WSH)是微软技术,用于在各种语言中运行脚本文件:它将脚本文件与脚本引擎连接起来运行。它自Windows 95以来一直存在,并且可以在网上找到其文档。

如果您双击一个.js文件,并且WSH没有被禁用,则会使用微软的“JScript”脚本引擎来执行具有JavaScript绑定的脚本以执行执行环境,其中包括访问文件系统和shell。它不提供浏览器环境或HTML呈现,因此document标记为未定义。

要运行浏览器脚本,请在浏览器中运行它。系统脚本可能编写成在WSH下运行,但在Windows下有一个更新的“PowerShell”替代品。NW.jsNode.js提供了交叉平台的替代功能和特性。

请注意,“JScript”的名称起源于上个世纪的浏览器战争。我们不要去那里;-)


3
最简单的“运行JS文件”的方法是创建一个引用JS文件的HTML文件,让默认浏览器运行它。下面是一个简单的HTML文件示例(假设脚本名为script.js,与HTML文件在同一文件夹中(命名为script.html)):
<html>
  <head>
   <title>My Script</title>
   <script src='script.js'></script>
  </head>
  <body></body>
</html>

作为一个附注,在Windows上,您可以将html文件命名为script.hta,它将在Internet Explorer中打开并在没有地址栏的窗口中打开(https://en.wikipedia.org/wiki/HTML_Application),根据您的环境,这可能会更容易一些。

1

3
这是一条评论而不是答案。 - Ibu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接