首先,一个警告。主脚本的并非网页中的生成。我将使用Windows脚本宿主来运行.js文件在Windows。

<强>的问题: 我想创建一个javascript“文库”包含多个对象,每个具有许多功能。我希望这个库将得到相当大的时间和想保持它在一个单独的JavaScript文件(姑且称之为 Library.js )。我想从另一个脚本访问从 Library.js 的对象(我们称之为一个 user.js的)。

在本质上,我寻找类似于C / C ++的东西 “包括” 范式。

反正有没有执行这一在JavaScript? (记住,这不是基于网络的)

有帮助吗?

解决方案

本页面这里是最接近我能找到。它谈论的.wsf文件,这让你在一个文件中把多个脚本(可以用不同语言编写)。

对于你的问题应该是这样的:

<强> user.wsf

<job id="IncludeExample">
   <script language="JScript" src="library.js"/>
   <script language="JScript">
      <![CDATA[
      // use your library functions here
      ]]>
   </script>
</job>

有可能是更好的办法,但我不是一个WSH专家。

其他提示

我知道这是一个老问题,它已经回答和接受。

我知道.WSF文件以及它们是如何工作的;他们所服务的目的。

不过,我还发现它方便做从在WSH运行的纯.js文件中的“包容性”。这是我对这个解决方案。

    function includeFile (filename) {
        var fso = new ActiveXObject ("Scripting.FileSystemObject");
        var fileStream = fso.openTextFile (filename);
        var fileData = fileStream.readAll();
        fileStream.Close();
        eval(fileData);
    }

使用该效用函数定义的,我可以从一个JavaScript模块内执行此操作:

includeFile("externalFile1.js");
includeFile("externalFile2.js");
includeFile("etc.js");

...然后我可以调用任何功能或挠任何在这些模块中定义的变量。

一个类似的技术可与.VBS文件:结果 怎么办我包括在VBScript(类似于C的#include)的公共文件?

您可以通过使用Windows脚本宿主,而不是特定的.js或.vbs文件,实现自己的目标。更多信息可在的MSDN网站

从链接:

  

Windows脚本(* .wsf的)文件是文本   含有可扩展标记文档   语言(XML)代码。它集成   多种功能,为您提供   增加了脚本的灵活性。   由于Windows脚本文件没有   发动机特有的,它们可以包含   从任何Windows脚本脚本   兼容的脚本引擎。他们的行为   作为容器。

您将CAL使用相同的语法一个.js和.vbs文件lthe文件:

  

的wscript.exe myScriptFile.wsf

更新:纠错指出...

也许这phpjs实现可能会有帮助。

http://phpjs.org/functions/include:433

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top