0

プロジェクトのメンテナンスとコードの読み取りを行ってい
ます。変数の宣言には 2 つの方法があります。1 行目と 2 行目の違いを説明できる人はいますか?

私にとって、javascript では、varキーワードはオプションであると読んでいます。最初の行では、2 つの新しい変数を宣言して初期化しています。2 行目では、2 つの新しい変数を宣言していますが、初期化していません。私はこれから何かをもっと取る必要がありますか?

aURL = ""; msgNb = 1;
var mode, param, counter;
4

3 に答える 3

9

これらすべての変数が関数内にない限り、それらはすべてグローバルです。最初の 2 つは割り当てであり、以前に宣言されているため推測できます。そうでない場合は、次のように短縮できます。

var aURL = '', 
    msgNb = 1, 
    mode, 
    param, 
    counter;

割り当てられていないものには、デフォルトで未定義の値があります。

常にvarキーワードを使用して、変数を同じ関数スコープ内に保持し、強制的に暗黙のグローバルにしないようにする必要があります。そうしないと、変数の命名と割り当てが重複する問題が発生する可能性があります。

于 2009-12-11T17:50:15.527 に答える
3

使用していない場合はvar、「親」スコープから変数を使用 (または作成) しており、どのスコープでもローカル変数が見つからない場合はグローバルになります。

于 2009-12-11T17:51:02.000 に答える
3

これはいわゆる「jquery」の問題ではなく、JavaScript の問題です。「var」キーワードのない変数は、グローバル スコープを持ちます。つまり、すべてのメソッド、オブジェクトなどから参照できます。var は、その特定のスコープ内でのみ参照できます。

于 2009-12-11T17:51:16.040 に答える