如何加载通过JavaScript对象调用的JavaScript文件的函数

如何加载通过JavaScript对象调用的JavaScript文件的函数,javascript,Javascript,我有一个需要使用脚本对象调用的本地JS文件。但是,我无法运行这些函数。下面是代码片段 <script type="text/javascript"> var x = document.createElement("SCRIPT"); x.type = "text/javascript"; x.src = "file:///C:/scripts/localscript.js"; //one of the functions is loadData(); loadData();

我有一个需要使用脚本对象调用的本地JS文件。但是,我无法运行这些函数。下面是代码片段

<script type="text/javascript">
 var x = document.createElement("SCRIPT");
 x.type = "text/javascript";
 x.src = "file:///C:/scripts/localscript.js";
 //one of the functions is loadData();
 loadData(); //I'm getting reference error, loadData is not defined.
</script>

var x=document.createElement(“脚本”);
x、 type=“text/javascript”;
x、 src=”file:///C:/scripts/localscript.js";
//其中一个函数是loadData();
loadData()//我收到引用错误,未定义loadData。

谢谢,

使用
onload
事件:

x.onload = function() { window.loadData(); }

您需要创建一个
script
元素并将其插入
DOM(主要在head下)
以加载脚本。当浏览器加载该脚本时,从该脚本返回的任何内容都将可用

考虑使用下面的代码
sampleScript.js

(function(window){
  'use strict';

  window.app = {
    sayHi: function() {
      console.log('Hey there !');
    }

  };

})(this);
要加载此脚本,我需要

<script>
   var node = document.createElement('script');
   node.src = 'sampleScript.js';
   node.addEventListener('load', onScriptLoad, false);
   node.async = true;
   document.head.appendChild(node);

   function onScriptLoad(evt) {
     console.log('Script loaded.');
     console.log('app.sayHi ---> ');
     app && app.sayHi();
   }
</script>

var节点=document.createElement('script');
node.src='sampleScript.js';
node.addEventListener('load',onScriptLoad,false);
node.async=true;
document.head.appendChild(节点);
函数onScriptLoad(evt){
log('Script-loaded');
console.log('app.sayHi-->');
app&&app.sayHi();
}
根据提示,您可以满足您的需要。希望这有帮助