我想从箭头函数输出对象(以简短形式),所以完整的代码是:
somemethod(function(item) {
return {id: item.id};
})
带箭头功能:
somemethod((item) => {
return {id: item.id};
})
现在简短形式应该是:
somemethod(item = > {id: item.id} )
这不起作用,以及这个:
somemethod(item = > {{id: item.id}} )
我现在找到的只有一个解决方案是使用create Object表示法:
somemethod(item = > new Object({id: item.id}) )
还有另一种方法吗?
答案 0 :(得分:1)
somemethod(item => ({ id: item.id }))
测试:
> a = item => ({id: item.id})
< function item => ({id: item.id})
> a({ id: 5, name: 7 });
< Object {id: 5}
答案 1 :(得分:1)
对于对象,您使用括号包裹对象,否则它无法正常工作
这是因为大括号({})内的代码被解析为一系列语句
尝试以下
var func = () => ({ foo: 1 });