<script>
// let 和 const 的区别
// var的变量穿透的问题
// 常量修改的问题
//穿透现象
// for (var i=0; i < 5; i++) {
// console.log(i);
// }
// 变量穿透
// console.log(i);
//正常现象
// for (let i=0; i < 5; i++) {
// console.log(i);
// }
const PI=Math.PI;
console.log(PI);
// 传统方式定义变量
var name = 'Let';
var link ='http://www.baidu.com';
var PI=Math.PI;
console.log(name);
console.log(link);
console.log(PI);
// ES6定义变量
let name2='Const';
let link2='http://www.88sv.cn';
// 常量
const PI2=Math.PI;
console.log(name2);
console.log(link2);
console.log(PI2);
</script>
变量穿透
javascript是一门弱类型语言,没有java的那种严格性,在javascript和java中都有for循环,用于便利数据。但是在javascript中会出现这样一种怪情况,变量i本是在for的作用域中,在外面应该是获取到了,但是现在获取到了,这就是变量穿透。而解决这种问题的方式就是使用es6中的let关键字。