私は、その範囲が何であるかわからないことに気づきました
var foo='bar',
baz = 'bar';
は。
明らかにfooはローカルスコープですが、ローカルスコープにするためにbazでvarキーワードが必要ですか、それとも私の例はすでにローカルスコープですか?
私は、その範囲が何であるかわからないことに気づきました
var foo='bar',
baz = 'bar';
は。
明らかにfooはローカルスコープですが、ローカルスコープにするためにbazでvarキーワードが必要ですか、それとも私の例はすでにローカルスコープですか?
それらは両方とも同じスコープになります。
var foo = 'bar',
baz = 'bar';
略して:
var foo = 'bar';
var baz = 'bar';
したがって、たとえば関数内では、一度だけ宣言した場合でも、との両方がローカル変数になりfoo
ます。baz
var
JSLintのようなツールは、実際にはvar
キーワードが1回だけ使用されることを想定しているため、それに準拠する場合は、最初の例を使用する必要があります。
確かに、これは非常に興味深い質問です。JavaScriptはボーダーケースでいっぱいです。
このブログ投稿:http ://scribu.net/blog/javascript-var-keyword-for-php-developers.htmlで、著者は「var」キーワードを使用するかどうかの影響の例をいくつか示しています。
長い話を短くします、