在这种情况下,如何从另一个文件访问文件中声明的变量和方法?
归档一个
jQuery(function(t) {
var myVar = 'myValue',
e = function(t) {
console.log('myLog');
}
});
文件二
jQuery(function($){
// ????
});
答案 0 :(得分:2)
你没有。它与文件无关(JavaScript主要不关心文件,除非它们是ES2015 +模块),它与myVar
和e
完全私有这一事实有关到您在第一个代码块中传递到jQuery
的匿名函数。即使同一文件中该函数之外的其他代码也无法访问它们。
您必须更改第一个文件才能在该功能之外访问该信息。你可以通过使它们成为全局(blech),或者通过使用单个全局来实现这一点,你可以使用具有这些东西属性的对象(稍微不那么“夸张”: - )),或者使用类似Webpack和真正模块的东西。
答案 1 :(得分:0)
这实际上取决于您设置脚本的方式。例如:
<script src="fileOne.js"></script>
<script src="fileTwo.js"></script>
然后您将能够执行以下操作:
文件一: - 声明变量x
文件二: - 访问变量x
我建议看看这个,它有助于理解变量范围(但这并不涵盖ES6):https://www.w3schools.com/js/js_scope.asp