![](/img/trans.png)
[英]How do I use variables and function from another file in javascript?
[英]How could I use the variables from a remotely stored JavaScript file within the function of another JavaScript file?
目前,我正在嘗試從存儲在網頁上的JavaScript文件(例如“ website.com/javascript.js”)中提取數組,並通過存儲在為網站制作的JavaScript文件中的函數運行它。 這是一個游戲。
以前,我曾嘗試將兩個.js文件導入HTML文件,並將網站中的數組用作我自己的JavaScript文件的輸入,但我似乎無法做到這一點。
我只是無法在線找到答案(或者不知道如何正確表達問題)。 如果需要為此目的導入任何東西,您能告訴我要導入什么嗎? 謝謝!
這是我正在處理的代碼。 對非常新手的代碼感到抱歉,我在JavaScript中工作不多。
function makeBracket(players){
var resultString;
for (var i = 0; i < players.length; i++){
var assassinName = players[i][1];
var targetCode = players[i][4];
for(var j=0;j<players.length;j++){
var code = players[j][2];
if(code == targetCode){
var targetName = players[j][1];
document.write(assassinName + " -> " + targetName + "<br>");
}
}
}
我將對包含您的函數的文件使用function.js
,對包含所需數據的文件使用array.js/array.json
。
您可以同時包含兩個文件,並將第一個文件上的數組公開為全局變量。 要包括它們,請在HTML上依次使用兩個script
標簽:
<script type="text/javascript" src="/array.js"></script>
<script type="text/javascript" src="/function.js"></script>
array.js
:
window.myArray = [/* Data here */];
function.js
:
var array = window.myArray;
doStuff(array);
另一種選擇是將數組存儲為JSON格式,然后使用AJAX異步加載。
考慮以下function.js
:
$.getJSON("/array.json", function(array) {
doStuff(array);
});
加載后(我假設這里是jQuery,因為它位於問題的標記中),它將向/array.json
發出請求,將其解析為JSON,並將結果傳遞給回調函數。 從那里,您可以對數據進行任何處理。
這種方法的優點是您無需擔心文件的順序,也無需使用任何全局變量。 但是,它的理解要稍微復雜一點,並且頁面加載和數據到達之間會有一個小的延遲。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.