[英]How can I create a javascript library in a separate file and “include” it in another?
首先,一個警告。 主腳本不在網頁中運行 。 我將使用Windows腳本宿主在Windows中運行.js文件。
問題:我想創建一個包含許多對象的javascript“庫”,每個對象都有許多功能。 我希望這個庫會隨着時間的推移變得相當大,並希望將它保存在一個單獨的javascript文件中(我們稱之為Library.js )。 我想從另一個腳本訪問Library.js中的對象(讓我們稱之為User.js )。
本質上,我正在尋找類似於C / C ++“包含”范例的東西。
反正有沒有在javascript中實現這個? (請記住,這不是基於網絡的)
我知道這是一個古老的問題,已得到回答和接受。
我知道.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 Scripting Host而不是特定的.js或.vbs文件來實現目標。 可以在MSDN站點上找到更多信息。
從鏈接:
Windows腳本(* .wsf)文件是包含可擴展標記語言(XML)代碼的文本文檔。 它結合了多種功能,為您提供更高的腳本編寫靈活性。 由於Windows腳本文件不是特定於引擎的,因此它們可以包含來自任何Windows腳本兼容腳本引擎的腳本。 它們充當容器。
您可以使用與.js和.vbs文件相同的語法來編寫文件:
wscript.exe myScriptFile.wsf
更新:更正指出......
也許這個phpjs實現可以幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.