ここでの可変干し療法の違いは何ですか?
-
19-09-2019 - |
質問
私はプロジェクトのメンテナンスを受け取り、コードを読んでいます:
可変宣言の2つの方法があります。 1行目と2行目の違いが何を意味するのかを誰かが説明できますか?
私にとって、私はそれをJavaScriptで読んでいます、 var
キーワードはオプションです。最初の行で、彼らは2つの新しい変数を宣言し、それらを初期化しました。 2行目では、2つの新しいバリアルベースを宣言しましたが、初期化されていません。これからもっと何かを取るべきですか?
aURL = ""; msgNb = 1;
var mode, param, counter;
解決
これらの変数がすべて関数内にある場合を除き、それらはすべてグローバルであるため、最初の2つは以前に宣言されたために推測する割り当てです。
var aURL = '',
msgNb = 1,
mode,
param,
counter;
割り当てられていないものは、デフォルトで未定義の値を持っています。
常に使用する必要があります var
変数を同じ関数範囲内に保持し、暗黙的なグローバルにすることを強制しないキーワードでは、変数の命名と割り当てを重複して問題に遭遇する可能性があります。
他のヒント
使用していない場合 var
次に、「親」の範囲から変数を使用して(または作成)、どの範囲でローカルのスコープを見つけられない場合はグローバルになります。
これは、発言ごとに「jQuery」問題ではなく、むしろJavaScriptの問題です。 「var」キーワードのない変数には、グローバルな範囲があります。つまり、すべてのメソッド、オブジェクトなどから表示されます... VARは特定の範囲内でのみ表示されます。
所属していません StackOverflow