2017-10-12 14 views
0

この場合、ファイル内で宣言された変数とメソッドに別のファイルからアクセスするにはどうすればよいですか?別のファイルから変数とメソッドにアクセスする

ファイル1つの

jQuery(function(t) { 

    var myVar = 'myValue', 

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

}); 

ファイル2

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

"ファイル1"は何も公開されていません。多分e変数の範囲を除いて。あなたはそれを使うことができませんか?あなたは正確に何をしようとしていますか? – David

答えて

2

あなたはしないでください。これはファイルとは関係がありません(JavaScriptはES2015 +モジュール以外のファイルについてはほとんど気にしません)。それは、myVareであり、あなたが渡している匿名関数に完全にプライベートなですjQueryを最初のコードブロックに挿入します。同じファイル内のその関数外の他のコードでも、それらのファイルにアクセスできなくなります。

最初のファイルを変更して、その情報がその機能の外部にアクセスできるようにする必要があります。あなたはそれらをglobals(blech)にすることによって、あるいはという単一のグローバルを、これらのもののためのプロパティを持つオブジェクト(少し "blech" :-))、またはWebpackや真のモジュールのようなものを使っています。

0

本当にあなたのスクリプトの設定方法によって異なります。その後、あなたは次の操作を行うことができるようになります

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

:例えば

ファイルワン: - 変数xに

ファイル二つの宣言: - アクセス変数x

を私はお勧めこれを見て、可変範囲の理解に役立ちます(ただし、ES6のletは含まれません)。https://www.w3schools.com/js/js_scope.asp