老师,想请问关于解构赋值问题

来源:5-1 函数扩展之默认参数

悠然于世

2020-01-03 00:19:37

// 本课所说的默认值方法
function add({ name = 5, age = 38 } = {}) {
  console.log(name, age);
}
add();

// 之前说的函数参数解构赋值
function Computer({ name = 5, age = 38 }) {
  console.log(name);
  console.log(age);
}
new Computer({});

所以在方法add()这个函式中,{ name = 5, age = 38 } = {} 是否就是个实例化对象的方式?

写回答

1回答

好帮手慕星星

2020-01-03

同学你好,{ name = 5, age = 38 } = {}这是对象的解构赋值,不是实例化对象的方式。

可能之前见过的例子是这样的:

http://img.mukewang.com/climg/5e0eab7a09a82e5f05900042.jpg

被解构的对象是有值的。但是被解构的对象也可以没有值,可以给出默认值:

http://img.mukewang.com/climg/5e0eabb909a1c81d03930087.jpg

http://img.mukewang.com/climg/5e0eabbf095f661e01930059.jpg

这两段代码也是一样的:

http://img.mukewang.com/climg/5e0eac2009ad9beb06370328.jpg

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

1

0 学习 · 10739 问题

查看课程