-2

jQueryでグローバル変数を取得するにはどうすればよいですか? この構文は私が使用しているものです。

var $val = 2;
      or
val = 2; (without using var keyword).

サンクス。

4

1 に答える 1

1

何よりもまず、可能な限りグローバル変数を使用しないでください。それは(ほとんど)いつでも可能です。(ダライ・ラマに謝罪)

しかし、質問に答える:

グローバル スコープ (すべての関数の外) で使用varすると、グローバル変数が作成されます。

どこにも宣言していない変数に代入するだけで、厳格モードを使用していない場合 (使用することをお勧めします)、暗黙的にグローバルが作成されます。これは暗黙のグローバルの恐怖であり、避けるべきです。

グローバルスコープで使用せずにグローバル変数を作成する必要がある場合は、オブジェクトvarを明示的に使用してホラーなしで作成できます。window

window.val = 2;

しかし、冒頭のポイントを繰り返します: グローバルを避けてください。

これを行う 1 つの方法を次に示します。すべてのコードでスコープ関数を使用します。

(function() { // <== The start of the scoping function
    // Your code here, `var`s here are global to *your* code but not actually globals
    // ...
})();         // <== The end of the scoping function, and the () to call it immediately

コード内でもグローバルを避ける必要がありますが、スコープ関数を使用することで、少なくとも外界から身を守ることができます (逆も同様です)。

于 2013-05-06T08:21:29.917 に答える