在這種情況下,如何訪問在另一個文件中聲明的變量和方法?從另一個文件訪問變量和方法
文件一個
jQuery(function(t) {
var myVar = 'myValue',
e = function(t) {
console.log('myLog');
}
});
文件中的兩個
jQuery(function($){
// ????
});
在這種情況下,如何訪問在另一個文件中聲明的變量和方法?從另一個文件訪問變量和方法
文件一個
jQuery(function(t) {
var myVar = 'myValue',
e = function(t) {
console.log('myLog');
}
});
文件中的兩個
jQuery(function($){
// ????
});
你不知道。它與文件無關(JavaScript很大程度上不關心文件,除非它們是ES2015 +模塊),它與myVar
和e
都是完全私有這一事實相關,這與您傳入的匿名函數jQuery
在第一個代碼塊中。即使在同一個文件中的那個函數之外的其他代碼也將無法訪問它們。
您必須更改第一個文件才能在該功能外訪問該信息。你可以通過使它們成爲全局變量(blech),或者通過使用全局變量來完成這些事情,例如通過一個具有這些屬性的對象(稍微不「blech」:-))或者通過使用類似Webpack和真正的模塊。
這真的取決於你如何設置你的腳本。例如:
<script src="fileOne.js"></script>
<script src="fileTwo.js"></script>
然後你就可以做到以下幾點:
文件中的一個: - 聲明變量x
文件中的兩個: - 訪問變量x
我建議看看這個,它將有助於理解變量範圍(但這不包括ES6的讓):https://www.w3schools.com/js/js_scope.asp
「文件1」不會暴露任何* be *使用的內容。除了'e'變量的範圍。你不能使用它嗎?你究竟想要做什麼? – David