【发布时间】:2020-11-18 05:42:55
【问题描述】:
我正在寻找更好的方法来编写以下代码:
let fromCreatedAt;
let toCreatedAt = new Date();
const someObject = {
...((!!fromCreatedAt || !!toCreatedAt) ? {
createdAt: {
...(!!fromCreatedAt ? {
from: fromCreatedAt,
} : {}),
...(!!toCreatedAt ? {
to: toCreatedAt,
} : {}),
},
} : {}),
}
console.log(someObject); // { createdAt: { to: 2020-11-18T05:32:57.697Z } }
fromCreatedAt 和 toCreatedAt 是可以改变并生成不同对象的变量。
这只是一个示例,但您可以拥有一个对象,它为其他字段多次重复 createdAt 字段的条件,因此您会找到一种方法来重构重复的功能。
【问题讨论】:
标签: javascript object conditional-statements spread