【发布时间】:2018-06-20 14:35:48
【问题描述】:
我有一个定义如下的函数
function getProperties({
url, listName, stage,
}) {
return {
url,
listName,
currentStage: stage,
};
}
如果我把这个函数称为
getProperties({
url: '<URL>',
stage: '<stage>',
})
它应该返回
{
url,
currentStage: stage,
}
所以基本上我希望函数只返回那些实际作为参数传递给这个函数的值。
【问题讨论】:
-
您只需要进行几项检查并返回您需要返回的内容。
-
如果参数列表很大,这将变得乏味。
-
这个函数还有什么作用?因为如果它只返回道具(如身份函数),那么它没有任何意义。您可以重命名一个没有此功能的参数。
-
这只是一个例子。这个函数传递了几个这样的参数。该函数的作用是仅当传递的对象包含该键时,才返回具有相同/不同键名的键值对。
-
解构是不可能的。您应该有一个通用的选择功能,如stackoverflow.com/q/25553910/218196 中所述。
标签: javascript ecmascript-6 destructuring