箭头函数的参数中的括号“{}”是什么意思

时间:2018-02-23 15:19:18

标签: typescript arrow-functions

我知道,对于多个参数或带有类型的单个参数,我们必须使用箭头函数的参数括号。 e.g。

.map( (arg1, arge2) => returnValue ).map( (arg1: ArgType) => returnValue )

如果我们打算从较短的语法箭头函数返回 json 文字,我们就要将它括起来。 e.g。

.map( (arg1, arge2) => ({ a: 1, b: 2}) )

但是,以下是做什么的?

.map( ({ value }) => value )

我在TypeScript代码库中偶然发现它,还不知道ES6是否也支持它。

1 个答案:

答案 0 :(得分:4)

这是ES2015中destructuring的一部分,它基本上等同于

let arr = [{ value: "" }]
arr.map(({ value }) => value )
// same as 
arr.map(o => { let value = o.value; return value; }  )