より洗練された構文で必要なことを正確に実行するrequire.jsを使用する必要があります。
http://requirejs.org/
「Call」命令が非同期ロードを行う場合は、次のようにコードを因数分解することもできます。
function Call(VCheck, callback)
{
callback = callback || function(data) {};
var data = ["Default", "1", "2", "3", "4", "5"];
if (VCheck < 0 || VCheck > data.length - 1) { return alert("Server Error - No Data!"); }
var script = document.createElement("script");
script.id = "data" + Math.ceil(Math.random() * 0xffffff).toString(16);
script.async = true;
script.type = "text/javascript";
script.src = data[VCheck] + ".js";
var head = document.getElementsByTagName("head")[0];
head.insertBefore(script, head.firstChild);
var img = new Image();
img.onload = function()
{
//your data here
console.log(document.getElementById(script.id).innerHTML);
var data = document.getElementById(script.id).innerHTML;
callback.call(null, data);
};
img.src = script.src;
}
または、jQueryのgetScriptを使用する場合:
$.getScript(data[VCheck] + ".js", function(data)
{
//your data here
console.log(data);
});