新冠带来的好处与坏处(浅谈var,let,const)
导读:众所周知,var,let 是声明变量的,const是声明常量的...
众所周知,var,let 是声明变量的,const是声明常量的
先简单剖析一下,var,let的区别
var 在ES6之前使用,而到了ES6之后官方就不推荐使用了,究其原因还是因为它自身的原因,导致代码令人感觉不太合理。
// var num;
num = 10;
console.log(num); // 打印 10, var 将变量num的声明提升到最顶层
var num;
for(var i=0;i<5;i++){
console.log("222222",i);
}
console.log("ssss",i) //由于用var声明的i,所以在这里能获取到for循环中的i,产生了变量污染
而如果换成let的话就会提示很正确的错误。
console.log(num1);
let num1 = 10; //Uncaught ReferenceError: Cannot access num1 before initialization
for(let i=0;i<5;i++){
console.log("222222",i);
}
console.log("ssss",i) //Uncaught ReferenceError: i is not defined 这是正常的错误
const 声明的常量不能修改;
const num = 10
num = 11 // TypeError: Assignment to constant variable.
console.log("num:",num)
const num;
num = 10; // Uncaught SyntaxError: Missing initializer in const declaration
console.log(num)
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!