JavaScript 隐式声明和var显示声明区别

  var a = "A";
    b = "B";
    delete a;
    delete b;
    //输出
    alert(a);
    //报错
    alert(b);

隐式声明的变量被动态地添加到闭包(这里指调用对象SrciptObject块)的varDelcs中,这些动态添加的内容是可以被delete运算清除的。而使用var显式声明的变量
在语法解释期就被添加到varDelcs(的前端),这个结构在运行前即被创建好,因此不是动态的,也不能用delete动态删除。

posted @ 2013-01-14 22:29  csdnbbs  阅读(307)  评论(0编辑  收藏  举报