2016-10-15 2 views
0

URLパラメータを渡すために必要なスクリプトがいくつかあります。私はまた、(静的な)ページには、ローカル環境のドメイン/サブドメインをハードコードするために必要なページがいくつかあります。グローバルURL変数を作成しても問題ありませんか?

私がしたいことは、urlをグローバル変数に格納して、1つの場所でurlを変更して、それに依存するさまざまなスクリプトの下流に送る必要があることです。

私には、例えば、含まれているシンプルなグローバルファイルについて考えた:

var myURL = 'http://www.google.com' 

私は、追加のURLがあるでしょうが、私はそれらと親切に従うことを計画しています。

これは良い習慣ではないと聞いたことがありますが、何をしようとしているのですか?

+0

はい、ユニークな状態であれば問題ありません。そうでなければ誰もライブラリやCDNを使用しませんでした。ポリフィルのようなものは存在しないでしょう。 jQueryはそれをどれくらい間違っているのでしょうか? – Endless

答えて

3

あなたが実際にいくつかのグローバル設定を持っている必要があります場合は、必要最小限にグローバル変数の使用を制限することができるように、私はオブジェクト/クラスでそれを固執するだろう、例えば:

だろう
var Config = { 
    googleUrl: 'https://google.com', 
    otherUrl: 'http://example.com', 
}; 

それぞれの事柄にグローバル変数を持たせるよりも優れています。

これは良い習慣ではないと聞いたことがありますが、私は何をしようとしていますか?

あなたのユースケースをもう少し説明する価値があります。たとえば、これらのURLをJavaScript設定で使用するのが適切か、それとも特定のUIコンポーネントに属するのが適切ですか?もしそうなら、UIコンポーネントはHTML要素のURLをデータ属性として指定する必要がありますか?それらが特定のJSモジュールに属している場合、そのモジュールのローカル変数である必要がありますか?

また、ローカル環境のドメイン/サブドメインをハードコードする必要がある(静的な)ページが多数あります。

window.location.hostnameを使用できませんか?

+0

ありがとう、Dymos。彼らが本質的に不可知論的なものなので、javascriptの設定で暮らすことは私の心の中では適切です。つまり、UIコンポーネントやモジュールの制約がないということです。これは私のためにうまくいった。 – dentalhero

-2

私は間違っているかもしれませんが、あなたがconstantsを使用している限り、なぜこれが問題になるのかわかりません。

const name1 = value1 [, name2 = value2 [, ... [, nameN = valueN]]]; 

編集: しかし、最後に、あなたは彼らが後でデバッグ時にいくつかの問題を引き起こす可能性があるため、グローバル変数を使用しないでください。

関連する問題