<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
//在Es6之前不论变量还是常量都只用var来表示,在Esc6后变量用let,常量用const表示
//使用var可能会导致的后果:1、变量穿透;2、常量值能被进行修改
for(var i=0;i<4;i++){
console.log(i);
}
console.log("循环结束");
console.log("i="+i);
//此时i的值为4,但是按理说当for循环结束的时候i不应该被保存下去,这种情况就叫变量穿透
var PI = Math.PI;
PI++;
console.log("常量PI的值为")
console.log(PI);
//此时的PI应该是常量,但是却可以被修改,不符合我们的需求
</script>
<script>
//正确使用
for(let j=0;j<4;j++){
console.log(j);
}
console.log("循环结束");
//console.log("j="+j);
const pi = Math.PI;
//pi++;
console.log("常量pi的值为")
console.log(pi);
</script>
</body>
</html>
1_var和let与const的区别
最新推荐文章于 2022-04-22 16:59:23 发布