首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >JScript:动态加载JavaScript库

JScript:动态加载JavaScript库
EN

Stack Overflow用户
提问于 2013-01-14 21:45:46
回答 2查看 1K关注 0票数 4

我目前正在为微软JScript运行时环境编写一个JavaScript脚本。它不是在浏览器中运行,而是更像SysAdmin使用VBScript那样运行。我已经写了很多代码,虽然其中一些代码是针对需要完成的特定内容的,但其中大部分都是支持框架,让脚本完成它需要做的事情。我想在将来的脚本开发中使用这些代码,但就我目前所知,我必须一次又一次地复制和粘贴这些迷你库,这只是一次又一次的更新噩梦,效率很低。我知道当我有一个windowdocument的时候,动态加载JS是可能的,我知道在Node.js中require() JS文件是可能的,但是在MS的原始JScript运行时中这是可能的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-15 11:57:13

查看Windows Script File (*.wsf)格式。它的一个特性就是允许像你所描述的那样包含。下面是链接文档中的一个示例:

代码语言:javascript
代码运行次数:0
运行
复制
<job id="IncludeExample">
   <script language="JScript" src="FSO.JS"/>
   <script language="VBScript">
      ' Get the free space for drive C.
      s = GetFreeSpace("c:")
      WScript.Echo s
   </script>
</job>

其中"FSO.JS“包含JScript库。

票数 4
EN

Stack Overflow用户

发布于 2013-01-14 22:13:13

假设你谈论的是WSH,你可以加载一个文件并评估它的内容,这与包含它是一样的。

代码语言:javascript
代码运行次数:0
运行
复制
var incfso=new ActiveXObject("Scripting.FileSystemObject"); 
include = function(x) {
    eval(incfso.OpenTextFile(x,1).ReadAll());
}

来源:http://www.mailsend-online.com/blog/wsh-javascript-includes.html

我不能为jscript找到像"window“这样的全局对象,但是你可以创建一个。

代码语言:javascript
代码运行次数:0
运行
复制
var host = this;
var test = "hello-world";

var messagebox = new ActiveXObject("wscript.shell");

if (host.test) {
    messagebox.Popup("host.test exists, value = " + host.test);
} else {
    messagebox.Popup("host.test does not exist.");
}

我认为"host“现在实际上应该是全局对象。(不管怎么说,这个例子对我来说是可行的)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14319592

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档