【无标题】 var let const 的区别与特点

本文详细介绍了JavaScript中var、let和const的区别,包括变量提升、暂时性死区、块级作用域以及它们在重新声明和赋值上的规则。重点讲解了块级作用域的特性,以及var、let、const在全局作用域与window对象上的表现差异。
摘要由CSDN通过智能技术生成

①Let和var是用来声明变量的可以重新赋值

Const是用来声明常量的,设置初始值后,不可以重新赋值

②重复说明:已经存在的变量或常量,又声明了一次(包括函数的参数)

Var允许重新声明,let和const不允许

③变量提升:var可以提升变量的声明到当前作用域的顶部,不会提升变量的值

而let和const不会提升变量

④暂时性死区:只要作用域内存在let、const,它们所声明的变量或者常量就自动“绑定”在这个区域里面,不再受外部作用域的影响,并且只有在声明变量之后,才可以获取和使用该变量,否则就会报错。Let和const存在暂时性死区,而var 不存在。

⑤window对象的属性和方法:在全局作用域中,var声明的变量,通过function声明的函数,会自动变成window对象的属性或者方法,而let、const不会。

⑥块级作用域:var没有块级作用域,let和const有块级作用域。{}、循环语句、判断语句和let、const配合使用的都可以成为块级作用域。Function(){}为函数作用域。块级作用域是ES6中新增的一个作用域,指在大括号{}里面使用let或const关键字声明变量或常量,就会形成一个块级作用域。但有两个需要特殊记忆,函数和对象的大括号{}不属于块级作用域。

块级作用域有:for  / while  / {} / do while  / if / switch

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值