gpt4 book ai didi

javascript - 在 JavaScript 中从另一个对象创建对象

转载 作者:行者123 更新时间:2023-11-29 10:40:40 25 4
gpt4 key购买 nike

我有一个像这样的对象:

cols : [Object { name="firstname", type="string"}, Object { name="lastname", type="string"}, Object { name="valid", type="checkbox"} ....]

我需要从这个对象创建对象:

[
{
data: 'firstname'
},
{
data: 'lastname'
},
{
data: 'valid',
type: checkbox
}
]

唯一的规则是,如果第一个对象中有 type="string",您只需忽略它(检查我的第二个对象)。当然这只是一个例子,所以我需要一些自动的东西。

我正在尝试使用此功能:

var headers = data.cols.map(function (el, index) {    
return el.name;
});

在这里我可以检索我的元素 el.nameel.type。但我不知道如何创建这个特定对象?我尝试使用 splicepush...但是为了创建多行等。我不知道。

最佳答案

您可以使用map 函数本身,但是您需要创建一个新对象并根据条件添加所有字段,如下所示

var data = [{
name: 'firstname',
type: 'string'
}, {
name: 'lastname',
type: 'string'
}, {
name: 'valid',
type: 'checkbox'
}];

var result = data.map(function (currentObject) {

var object = {
// Create an object with `name` property
data: currentObject.name
};

if (currentObject.type !== 'string') {
// create `type` property in the `object`, only if type is not `string`
object.type = currentObject.type;
}

return object;
});

console.log(result);

[ { data: 'firstname' },
{ data: 'lastname' },
{ data: 'valid', type: 'checkbox' } ]

关于javascript - 在 JavaScript 中从另一个对象创建对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29898985/

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