ES6学习--let,const以及解构赋值

let 和const 命令

let 用法

  • 块级作用域
  • 不存在变量提升,变量先声明后使用,这以为这typeof 不再是一个绝对安全的操作
  • TDZ(temporal dead zone)
  • 不允许重复声明

块级作用域

  • 外层代码不受内层代码的影响
  • 在严格模式下(‘use strict’)下,函数只能在顶层作用域和函数内声明,不然报错

const命令

  • const 用来声明常量,以为着一旦声明就要初始化
  • 冻结对象object.freeze(obj)方法
  • ES6有6种声明变量的方法,var,function,let,const,class,import

跨模块

export const A=1

全局对象

  • 浏览器中window,Node中global
  • var,function声明的全局变量是全局变量的属性,而let,const则不是

变量解构赋值

  • 本质上是“模式匹配” var [a, b, c] = [1, 2, 3],解构不成功,赋undefined
  • 允许使用默认值
  • 可以将现有对象的方法赋值到变量 let{sin, cos, log} = Math

用途

  • 交换变量的值[x, y] = [y, x]
  • 从函数返回多个值 return 对象或数组再进行赋值
  • 函数参数的默认值
  • 遍历Map解构
for (let [key, value] of map){

}
  • 指定模块输入
    const {model1, model2} = require(‘source’)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值