es6笔记1——变量解构赋值

12 篇文章 0 订阅

最近在复习 es6 的语法,再次看的过程中,有很多细节以及容易犯的错误,在这里做一下记录,以便以后多次查看复习:
函数的参数使用默认值的时候,需要注意的地方:

function func1({x = 0, y = 0} = {}) {
  return [x, y];
}

func1({x: 3, y: 8}); // [3, 8]
func1({x: 3}); // [3, 0]
func1({}); // [0, 0]
func1(); // [0, 0]

上面的代码里是对函数的参数 x, y 指定了默认值;
但是下面的代码里其实是对函数的整体参数指定了默认值,而不是为变量 x 和 y 指定默认值

function func2({x, y} = { x: 0, y: 0 }) {
  return [x, y];
}

func2({x: 3, y: 8}); // [3, 8]
func2({x: 3}); // [3, undefined]
func2({}); // [undefined, undefined]
func2(); // [0, 0]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值