js中的var和let

今天在造轮子时遇到了一个新的关键字,记录一下:

let和var都是定义变量的关键词,区别在哪?

看个例子:

for(var i=0;i<10;i++){
    console.log(i);
}

console.log(i);

结果是什么?没错是0~10

 

需要注意的是最后输出的10是在for循环以外又输出了一次i,而这次的i没有任何关键字的修饰。

再看另一段代码:

for(let i=0;i<10;i++){
    console.log(i)
}
console.log(i);

这次应该输出什么?来看结果

只输出到了9,最后同样的一次输出i时,报错了:i is not defined

总结:

var定义的变量是全局通用的,而let定义的变量只是块级变量

猜你喜欢

转载自www.cnblogs.com/gzs-monkey/p/9463267.html