ES6中let和conat的使用区别

let

let在ES6中是用来声明变量的

  • 必须先声明后再使用

  • 使用let声明变量的时候不可以重复声明,但可以重新赋值
    当使用var声明的时候可以重复声明同一个变量,但是后声明的变量就会覆盖前面的,但是使用let的时候会报错

  • 会出现暂时性死区的问题
    什么是暂时性死区? 所谓的暂时性死区就是指使用let的时候在一个代码块中或是在一个函数内部声明,也就是块级作用域,在这个作用域以外的场景下去使用声明的这个变量是取不到值的,就像是形成了一个封闭的区间,在语法上称为暂时性死区

  • 不能进行变量提升

const

const在ES6中用来声明常量

  • 必须先声明后使用
  • 有暂时性死区问题
  • 不可以重复声明,也不可以重新赋值
  1. const这一点和let有区别,let是可以重新赋值,会替换之前赋值的内容,但const中,就像是一个固定的是指不可以发生改变,如果改变就会抛出错误,但是要注意,const属性并不是不可以修改
  2. 在基本数据类型中,比如const x = 3.5;将他在后面重新赋值x = 4 就会报错,所以基本额数据类型不可以修改
    在这里插入图片描述
  3. 在引用数据类型中,因为const 声明的是一个引用数据类型,所以只是对应的是这个数据所在的指针,也就是一个地址,而我们在后面重新改变这个值的时候是直接修改的指针中的内容,而是没有修改这个指针的指向,所以const不会报错,所以说使用const声明的值并不是固定不能改的,分类型
  • 不能进行变量提升
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值