比方说,我想创建一个对象,其中某些成员并不总是存在的
t = {a: 1, b: b if b}
console.log t # { a: 1, b: undefined }
我想在缺少b时达到这个结果
t = {a: 1}
if b then t.b = b
console.log t # { a: 1 }
有没有一种方法可以有条件地声明b而无需创建密钥,也不需要单独的代码行?
当您需要在大物体上重复进行此操作时,可以这样做
t = Object.fromEntries(Object.entries(
a: 1
b: b
c: 2
).filter(e=>e[1]))
[如果b
为假,这将过滤掉b
属性。