[英]How is the body passed to the return statement in this function
我已經遍歷了某個特定的代碼庫,並且遇到了如下所示的函數定義:
function handleSuccess(res) {
return (body = {}) =>
res.status(statusCode).jsend.success({
status: statusCode,
success: true,
...body,
})
}
然后調用該函數,如下所示:
handleSuccess(res)({ message: 'message' });
我似乎不明白body({message:'message'})是如何傳遞到上述函數的return語句的。 因此,對於此功能如何在Javascript中起作用,我將不勝感激。
handleSuccess
創建並返回一個函數(使用箭頭函數語法)。 它的調用正在運行中(作為其后的(res)
的結果),然后使用對象初始化器創建的對象調用它返回的功能。
// vvvvvvvvvvvvvvvvvv---------------------------- creates the function
handleSuccess(res)({ message: 'message' });
// ^^^^^^^^^^^^^^^^^^^^^^^^ --- calls the function
對它的調用也可以這樣寫,可能更清晰:
const handler = handleSuccess(res);
handler({ message: 'message' });
更多:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.