gpt4 book ai didi

javascript - 为什么 Typescript lambda 函数会被大括号破坏?

转载 作者:行者123 更新时间:2023-11-30 16:05:32 26 4
gpt4 key购买 nike

不久前我开始开发 Typescript & C#,而以前我的大部分开发都是使用 javascript+php。我正在开发一个 angular 2 应用程序,并创建了一个 HTTP 服务。我在这里讨论的问题与 Typescript 的关系比与 angular 2 的关系更大。

在下面的代码中:

 export class HttpRest{
constructor(
private _http: Http,
private userIdsx: UserIds,
private _jsonFormater: JsonFormater
){}
...
getGroupsList(){
return this._http.get('file.json')
.map(res => res.json());
}
...
}

我用一条语句传递一个匿名 lambda 函数,我想添加大括号来创建一个函数作用域,但是当我这样做时,事情就坏了。

我正在尝试重构:

.map(res => res.json());

收件人:

.map((res) => {
res.json()
});

因此我可以执行更多操作,但这会中断代码并导致 res.json() 定义的 JSON 对象发生未定义错误。

问题是,为什么添加花括号会破坏这个简单的函数?带有作用域花括号的 lambda 函数不是语言的内置功能吗?

最佳答案

使用以下内容。你需要归还一些东西。

.map((res) => {
return res.json()
});

使用简洁的正文版本(没有大括号),它隐式地完成了......

关于javascript - 为什么 Typescript lambda 函数会被大括号破坏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37115696/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com