我想到,我不知道
的范围是什么var foo='bar',
baz = 'bar';
是
显然foo是本地范围的,但是baz在本地范围内是必需的var关键字,还是我的示例已经在本地作用域?
答案 0 :(得分:4)
他们最终都会在同一范围内。
var foo = 'bar',
baz = 'bar';
只是简称:
var foo = 'bar';
var baz = 'bar';
因此,在函数中,foo
和baz
都将成为局部变量,即使您只声明var
一次。
像JSLint这样的工具实际上希望var
关键字只能使用一次,所以如果你想遵守这个,你应该使用第一个例子。
答案 1 :(得分:1)
这确实是一个非常有趣的问题。 JavaScript充满了边界情况。
在这篇博文中:http://scribu.net/blog/javascript-var-keyword-for-php-developers.html,作者给出了使用或不使用'var'关键字的影响的一些例子。
长话短说,