for
js中,有for语句创建的变量i即使在for循环执行结束后,也依旧会存在于循环外部的执行环境中
for(var i=0;i<10;i++){
doSomething(i)
}
alert(i)//10
if
这里是在if语句中定义了变量color。如果是在C,C++,jave中 color会在if语句执行完毕后销毁。
但在js中,if语句中的变量添加到当前的执行环境(这里是全局环境中)
if(true){
var color='red';
}
alert(color)//'red'