全面感知ES6(1)变量的扩展

ES6中的变量的扩展

和var相比又有哪些区别呢?

首先,让我们回想下var都有那些特点和缺点

/*
var 声明变量的缺点:
1.可以重复声明
2.不能限制修改
3.没有块级作用域
特点:
有变量提升的功效
*/

想对比下,在让我们看下let的特点和缺点

/*
let 变量
1.不能重复声明
2.存在块级作用域
3.不存在变量提升功效
*/

看解释的话可能看的不是太懂,那就让我们直接看代码吧。

比如:

    console.log( a); // undefined
// 因为var有变量提升问题
var a = 1;
    var a = 3;
console .log( a) //3
// var可以进行修改值,也可以进行变量的从新赋值

    console. log( a) // 报错
// let不存在变量提升的问题,所以不能再声明变量前进行打印
let a = 1;
    a = 3;
console.log(a)//3
    //let不可以进行修改值,但是可以进行变量的重新赋值
    let a = 4;
console. log( a) //报错
     //let不可以重复声明

在比如

    {
var t = 99;
}
console.log ( t ); // 99
// var没有块级作用域的概念,所以可以获取到大括号里面的值
    
   {
let T = 3;
alert( T);//3
}
console.log( T); // 报错
// let有块级作用域的概念

const

/*
const 常量
常量一旦定义了,不可修改
const声明的数组和对象,可以向数组和对象数组中push和pop可以修改对象的属性值
原因是:
向数组中添加和删除东西,修改对象的属性值,并不会改变他自身原来的内存地址
*/

比如

    
    const m = 1;
m = 4; // 报错
console. log( m);

如果是数组呢?

    
    const arr = [];
arr. push( 2);
console. log( arr); // [2]

并没有报错,大家可以试一下。

关于ES6的变量扩展我能分享给大家大概就是这么多了,

如果上述代码有错误和不足,请评论或私信,我好及时改正。

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值