let与var的区别,为什么要用let?

1.var是全局声明,let是块级作用的,只适用于当前代码块 var a = 1; if(true){ let a; a=22; console.log(a);'//22 } if(){}内就是let作用于的块 2.var变量会发生变量提升,let则不...

1.var是全局声明,let是块级作用的,只适用于当前代码块

var a = 1;

if(true){

let a;

a=22;

console.log(a);'//22
}  

if(){}内就是let作用于的块


2.var变量会发生变量提升,let则不会举行变量提升

console.log(a)

var a=2;

console.log(a)   效果为underfined

若是是 let a =2 则会提醒报错


3.var 会造成重复赋值,循环里的赋值可能会造成变量泄露至全局


4.let在一个块级作用只能赋一次值,并举行当前代码块的锁区,就是说当前块只有let声明的这个变量是有用的

var a =2;

if(true){
a=3;//这个值会赋值失败,由于let造成了if{}这块代码的锁区

let a;
}

5.let在一个块级内,只能声明一个一个相同的变量名

var a =2;

if(true) {

var a=1;//a=1

let a=1;

let a=2;//报错

}

思源资源网:分类流动

1.阿里云: 本站现在使用的是阿里云主机,平安/可靠/稳固。点击领取2000米代金券、领会最新阿里云产物的种种优惠流动点击进入

2.腾讯云: 提供云服务器、云数据库、云存储、视频与CDN、域名等服务。腾讯云各种产物的最新流动,优惠券领取点击进入

3.广告同盟: 整理了现在主流的广告同盟平台,若是你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/2374

  • 发表于 2021-02-11 16:58
  • 阅读 ( 257 )
  • 分类:互联网

0 条评论

请先 登录 后评论
QQ979
QQ979

669 篇文章

你可能感兴趣的文章

相关问题