ES6新语法

ES6新语法

var关键字

  • 可以一次定义多个变量
  • 定义时可以只声明不赋值
  • 定义之后可以随时修改变量的值
  • 变量声明会被提升
  • 可重复定义变量
  • 全局定义的变量会被作为全局对象(global/window)的属性
  • 在代码块中使用 var 关键字声明的变量不会被束缚在代码块中

let关键字

  • 可以一次定义多个变量
  • 定义时可以只声明不赋值
  • 定义之后可以随时修改变量的值
  • 使用 let 关键字定义的变量,变量声明不会被提升,因此我们需要先定义,后使用
  • 在同一作用域下,不能重复定义同名变量
  • 全局定义的变量会被作为全局对象(global/window)的属性
  • 在代码块中使用 let 关键字声明的变量会被束缚在代码块中

const关键字

  • 在使用 const 关键字声明常量时,必须要进行赋值(初始化)。
  • 常量一旦初始化后,就不能被修改。
  • 在同一作用域下,不能重复定义同名的常量
  • 常量的声明不会被提升
  • 所有常量只在当前代码块内有效,一旦执行流到了代码块外,这些常量就会被立即销毁。

对象解构

     const obj = {
            firstName: 'AA',
            lastName: 'aaa',
            myAge: 30,
            phone: {
                number: 110,
                brand: '小米',
                color: '黑色'
            }
        };
  1. 使用对象解构初始化同名变量

    // 告诉 obj 对象,把 firstName 属性的值赋值给同名变量 firstName,把 lastName 属性的值赋值给同名变量 lastName
       let { firstName, lastName } = obj;
       console.log(firstName, lastName) 'AA''aaa'
    
  2. 使用对象解构初始化非同名变量

      // 告诉 obj 对象,把 firstName 属性的值赋值给变量 first_name,把 lastName 属性的值赋值给变量 last_name
    
        // let { firstName: first_name, lastName: last_name } = obj;
        // console.log(first_name, last_name) 'AA''aaa'
    
  3. 为变量指定默认值

     // 当 obj 对象中没有 myAge 属性时,变量 myAge 默认会被赋值为 20
        // let { firstName, lastName, myAge = 20 } = obj;
        // console.log(firstName, lastName, myAge)  // 'AA' 'aaa' 30
     //  当 obj 对象中没有 myAge 属性时
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值