gpt4 book ai didi

javascript - 创建对象 - 如果设置了值,则包括键

转载 作者:行者123 更新时间:2023-11-30 15:02:56 26 4
gpt4 key购买 nike

我想像这样构建一个对象是很常见的:

const test = {
key1: value1,
key2: value2,
key3: value3,
key4: value4,
}

但是,如果 value3undefined,我如何简洁地省略 key3

目前我正在做类似的事情:

const test = {
key1: value1,
key2: value2,
key4: value4,
}

if (value3) test.key3 = value3;

但是有些情况下有很多值可能是 undefined 所以我想知道是否有一种方法可以在值是 undefined< 时不返回键 来避免一大堆条件语句?

最佳答案

您可以将 Object.keysArray.reduce 一起使用,以仅收集未定义的值:

const test = {
key1: 'value1',
key2: 'value2',
key4: undefined,
}

const onlyPopulated = Object.keys(test).reduce((p, key) => {
if (typeof test[key] !== 'undefined') {
p[key] = test[key];
}
return p;
}, {});

console.log(onlyPopulated)

关于javascript - 创建对象 - 如果设置了值,则包括键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46229694/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com