JS基础知识点:变量(var let const 的区别)

【简单的JS知识点,复习用】


变量用于存储数据,方便实现对数据的操作

声明变量的方法有 var     let    const 

1.var 声明变量存在变量提升

(变量提升就是将变量的声明提升到当前作用域的最顶部)

代码如下:

 //var 声明变量 存在变量提升 (将变量的声明提升到作用域最顶部)
        {
            console.log(a);//undefined
            var a = 1
            console.log(a);//1
        }
        {
            var b
            console.log(b);//undefined
            b = 1
            console.log(b);//1
        }

 {                                                   

      var a = 1                                 var a;

                                           =>     console.log(a)

      console.log(a)                         a = 1

    }

let和const是es6新增声明变量方式

2.let 声明变量 不存在变量提升,并且在当前作用域内不能重复声明

在声明之前不能使用该变量,因为let将当前代码块转变成TDZ(暂时性死区)

 代码如下:

 //let声明变量 
        {
            // console.log(a);  会报错 因为存在TDZ
            let a = 1
            console.log(a);//1
            // let a = 2   会报错
        }

声明前使用报错 

重复声明报错 

 3.const声明变量  声明的是一个常量,必须有默认值

也会将当前代码块转变成TDZ(暂时性死区)

不能重复声明变量,

没有变量提升。

他的值不会改变,如果他的值是一个引用数据类型,并不影响引用数据类型内部数据的变化

代码如下:

 //const声明变量
        {
            // console.log(a); 会报错
            const a = 1
            // const a = 2 会报错
            console.log(a);//1
            const obj = {
                name: '张三',
                age: 18
            }
            obj.name = '李四'
            console.log(obj);//{name:'李四',age:18}
        }

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值