函数参数列表内的大括号在 es6 中有什么作用?
2022-08-30 02:09:27
我一直在我正在处理的代码库中看到如下所示的函数:
const func = ({ param1, param2 }) => {
//do stuff
}
这到底是做什么的?我很难在谷歌上找到它,因为我甚至不确定这叫什么,或者如何在谷歌搜索中描述它。
我一直在我正在处理的代码库中看到如下所示的函数:
const func = ({ param1, param2 }) => {
//do stuff
}
这到底是做什么的?我很难在谷歌上找到它,因为我甚至不确定这叫什么,或者如何在谷歌搜索中描述它。
它是解构的,但包含在参数中。没有解构的等效项是:
const func = o => {
var param1 = o.param1;
var param2 = o.param2;
//do stuff
}
这是将对象作为属性传递。
它基本上是简写
let param1 = someObject.param1
let param2 = someObject.param2
在没有参数的情况下使用这种技术的另一种方法是,让我们考虑一下某些Object确实包含这些属性。
let {param1, param2} = someObject;