JS之 var 与 let

var 的作用域是函数,就是在一个函数内声明都可以。这与C 语言系列的不一样,他们的作用域是语法块,就是大括号。

所以下面的执行会打印Person 方法的i.    同样Person函数的s 也能打印。但是,person 中的var s=3;改为let s=3 就不行了,这样更严格,符合很多语言的习惯。

只是let 在老浏览器不支持。

<script>
console.log("123");
function Person(){
    for(var i=0;i<4;i++)
    {
       var s=3;
    }
    console.log("for in "+ i);
}
Person();
console.log(i);
console.log(a);
</script>

猜你喜欢

转载自blog.csdn.net/qqqgg/article/details/80643051