var a = 1;
function test(){
        alert(a);

var a = 2;
} test();

运行的结果是undifined.不是2.

 

js 的执行过程中,编辑器先以读入代码段,对代码段中的var 变量和function 定义进行“预解析”,预解析var 变量的时候,初始化为undefined

 

相当于一下代码:

var a = 1;
function test(){
        var a;
        alert(a);
        a = 2;
}
test();

  

相关文章:

  • 2022-01-26
  • 2021-07-05
  • 2021-06-15
  • 2021-12-24
  • 2022-02-07
  • 2021-11-03
  • 2021-05-22
  • 2022-02-21
猜你喜欢
  • 2022-12-23
  • 2021-08-28
  • 2021-08-08
  • 2021-06-13
  • 2022-01-04
  • 2022-01-01
  • 2021-07-23
相关资源
相似解决方案