在 nodejs 8.10 中,我希望函数根据参数返回不同的对象。是否有任何简单的方法可以根据密钥的值包含或不包含密钥?
示例
// I do not like this solution, there is a 2 line body
// `c` may be undefined or a string (for example)
const f = (a, b, c) => {
if (c) return ({ a, b, c });
else return { a, b }
}
我们能否根据其价值简单地将c
包括在内或将其排除在外?
我期望这样的事情:
// I expect this kind of solution.
const f = (a, b, c) => ({ a, b, ___????___ })
答案 0 :(得分:3)
您无能为力,但是您可以:
const f = (a, b, c) => (c ? { a, b, c } : { a, b });
或
const f = (a, b, c) => {
const result = { a, b };
if (c) result.c = c;
return result;
}