たとえば、オブジェクト内のすべての変数を定義します。
var obj = {
array_one: ['x', 'y'],
some_value: 'z'
}
この方法には、すべての変数に対して一種の名前空間を作成するという利点があり、値をオーバーライドする必要がありません。
そして、ある種のインクルード メソッドを使用して、そのオブジェクトをコードに使用します。
簡単な方法の 1 つは、次のように、作成中のスクリプトの前にスクリプトを追加することです。
<script type="text/javascript" scr="file_with_object.js"></script>
他のより洗練されたが、この種の動作を繰り返す場合にのみ推奨されるのは、ライブラリまたはフレームワークを使用してインクルードをより簡潔にすることです。require.jsは良い例です
編集: 前の例では、コードがグローバル スコープで記述されていることを考慮して var でオブジェクトを使用しました。変数がグローバルであることを確認するには、window.obj = {} を使用する方がよいと思います。そして、念のため、この window.somevariable のように定義した変数はすべてグローバル変数になります。グローバル変数を定義すると、コード内のどこでも使用できます (定義が行われた後)。ただし、名前空間は正しい方法です。
EDIT 2:この投稿は、インクルードよりもスコープに関するものだと思います。このように変数を宣言するvar some_variable;
と、その変数を現在のスコープにバインドしたいと言っています。したがって、関数内でそれを行うと、その変数はその関数内で「生きます」:
var some_var = 10;
function(){
var some_var = 5;
console.log(some_var) // 5
}
console.log(some_var) // 10
ただし、両方のケースで var なしで変数を宣言すると、最初にその変数をグローバルにし、2 番目にその値をオーバーライドします。
some_var = 10;
function(){
some_var = 5;
console.log(some_var) // 5
}
console.log(some_var) // 5
そして、var なしで常に変数を宣言すると、その変数は window.variablename からアクセスできます。これは、変数を特定のスコープにバインドしていないためです。そのため、グローバル スコープの「名前空間」であるウィンドウ オブジェクトにバインドが行われます。