Ste*_*rov 7 javascript ecmascript-6
我想从箭头函数(以简短的形式)输出对象,所以完整的代码是:
somemethod(function(item) {
return {id: item.id};
})
Run Code Online (Sandbox Code Playgroud)
使用箭头函数是:
somemethod((item) => {
return {id: item.id};
})
Run Code Online (Sandbox Code Playgroud)
现在简短的形式应该是这样的:
somemethod(item = > {id: item.id} )
Run Code Online (Sandbox Code Playgroud)
那个不起作用,还有这个:
somemethod(item = > {{id: item.id}} )
Run Code Online (Sandbox Code Playgroud)
我目前找到的唯一解决方案是使用创建对象表示法:
somemethod(item = > new Object({id: item.id}) )
Run Code Online (Sandbox Code Playgroud)
还有别的办法吗?
对于对象,您已使用括号将对象括起来,否则它将不起作用
这是因为大括号 ({}) 内的代码被解析为语句序列
尝试如下
var func = () => ({ foo: 1 });
Run Code Online (Sandbox Code Playgroud)
参考:箭头函数
somemethod(item => ({ id: item.id }))
Run Code Online (Sandbox Code Playgroud)
测试:
> a = item => ({id: item.id})
< function item => ({id: item.id})
> a({ id: 5, name: 7 });
< Object {id: 5}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2848 次 |
最近记录: |