Javascript 能否将外部js文件加载到在加载js文件的文件上创建的函数中

Javascript 能否将外部js文件加载到在加载js文件的文件上创建的函数中,javascript,function,file,Javascript,Function,File,我正在创建一个游戏,我正在做的防止用户输入代码的事情之一就是将整个页面放入一个自调用函数中。如果所有变量都是局部变量,那么它们将无法在函数外部访问 但是,不是将所有脚本放在同一个文件中并在其周围放置函数,而是有一种方法可以在创建其他脚本的javascript周围放置函数,或者以某种方式将其他脚本插入同一个函数中。如果没有,我有办法做到这一点吗 例如: file.js如下所示: var a = 1; !function() { //loads the js file var s

我正在创建一个游戏,我正在做的防止用户输入代码的事情之一就是将整个页面放入一个自调用函数中。如果所有变量都是局部变量,那么它们将无法在函数外部访问

但是,不是将所有脚本放在同一个文件中并在其周围放置函数,而是有一种方法可以在创建其他脚本的javascript周围放置函数,或者以某种方式将其他脚本插入同一个函数中。如果没有,我有办法做到这一点吗

例如:

file.js如下所示:

var a = 1;
!function() {
    
  //loads the js file
  var script = document.createElement("script");
  script.setAttribute("src", "file.js");

  //could i do this?
  script.appendChild(script);
    
  //will a be undefined?
  alert(a);
}();
index.html如下所示:

var a = 1;
!function() {
    
  //loads the js file
  var script = document.createElement("script");
  script.setAttribute("src", "file.js");

  //could i do this?
  script.appendChild(script);
    
  //will a be undefined?
  alert(a);
}();

您是否已经了解了如何将javascript文件加载/导入到其他javascript代码中的说明?是的,但是create元素会创建一个新元素,并且不会将代码直接插入脚本标记之间。如果您这样做是为了避免玩家在客户端调用函数,那么这不会完全阻止他们。他们仍然只是打开开发工具,在某个地方放置一个断点,并从断点范围内调用函数。或者注入一个函数以使这些函数全局公开。需要记住的是。@zero298我做的另一件事是禁用ctrl、shift、u、I键和右键单击,这意味着他们向我的站点输入代码的唯一其他方法是使用bookmarklet,但该函数停止了这一操作。我的游戏可能仍有被破解的途径,但是如果我能把所有的东西都放进一个足够好的函数中。你有没有看过解释如何将javascript文件加载/导入到其他javascript代码中的内容?是的,但是create元素会创建一个新元素,并且不会将代码直接插入脚本标记之间。如果你这样做是为了避免玩家调用客户端的函数,这并不能完全阻止它们。他们仍然只是打开开发工具,在某个地方放置一个断点,并从断点范围内调用函数。或者注入一个函数以使这些函数全局公开。需要记住的是。@zero298我做的另一件事是禁用ctrl、shift、u、I键和右键单击,这意味着他们向我的站点输入代码的唯一其他方法是使用bookmarklet,但该函数停止了这一操作。我的游戏可能仍然有很多被破解的方法,但如果我能把所有东西都整合到一个功能中,那就应该足够好了。