【问题标题】:Accessing variables and methods from another file从另一个文件访问变量和方法
【发布时间】:2017-10-12 11:19:58
【问题描述】:

在这种情况下,如何从另一个文件访问一个文件中声明的变量和方法?

文件一

jQuery(function(t) {

    var myVar = 'myValue',

    e = function(t) {
        console.log('myLog');
    }

});

文件二

jQuery(function($){
    // ????
});

【问题讨论】:

  • “文件一”不会向 be 使用任何内容。除了e 变量的范围。你不能用那个吗?你到底想做什么?

标签: javascript jquery variables object


【解决方案1】:

你没有。它与文件无关(JavaScript 在很大程度上不关心文件,除非它们是 ES2015+ 模块),这与 myVare 都是完全私有的事实有关到您在第一个代码块中传递给jQuery 的匿名函数。甚至同一文件中该函数之外的其他代码也无法访问它们。

您必须更改第一个文件以使该信息可以在该函数之外访问。您可以通过使它们成为全局变量(blech)来做到这一点,或者通过一个 single 全局变量用于您的所有事物,例如使用具有这些事物属性的对象(稍微少一点“blech”:- ) ),或者使用 Webpack 和真正的模块之类的东西。

【讨论】:

    【解决方案2】:

    这实际上取决于您如何设置脚本。例如:

    <script src="fileOne.js"></script>
    <script src="fileTwo.js"></script>
    

    然后您将能够执行以下操作:

    文件一: - 声明变量x

    文件二: - 访问变量 x

    我建议看一下这个,它有助于理解变量作用域(但这不包括 ES6 的 let):https://www.w3schools.com/js/js_scope.asp

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-10
      • 2015-01-21
      • 2020-02-09
      • 1970-01-01
      • 1970-01-01
      • 2023-01-26
      相关资源
      最近更新 更多