<script language="javascript"> var var00 = 0; document.write(var00 + '<br>'); var var01 = 1; function foo() { //虽然是定义var01并同时初时话,但var01在整个函数内部都是有作用的,故相当于先声明,后初始化。 document.write(var01); var var01 = 1; } foo(); </script>
output: 0
undefined
因为内部var01再次定义了一遍,所以会undefined,而不是输出1
而去掉内部定义的var01前面的var 即可显示出1