Я хотел бы знать, как добавить два ключа внутри объекта массива в javascript.
В объекте obj
вместо заголовка добавить label and value
в javascript.
Каждый дочерний ключ может иметь дочерний ключ, если у него есть дочерний ключ и ключ заголовка, добавьте метку и ключ значения в javascript
var obj = [
{
id: 1,
title: "Category"
children: [
{
id:1,
title: "countries",
children: [
{title: "IN", id:1},
{title: "TH", id:2},
{title: "SG", id:3}
]
}, {
id:2,
title: "fields",
children: [
{title: "Finance", id:1},
{title: "Services", id:2}
]
}
]
}
]
function changeObj(obj){
if (obj.length > 0) {
var result = obj.map(e => {
if('children' in e)
e.children = e.children.map(child => {
if ('children' in child)
child.children = child.children.map(c =>({
label: c.title,
value: c.title
})
);
return child;
});
return e
});
return result;
}
}
Expected Output
{
label: "Category",
value: "Category",
children: [
{
label: "countries",
value: "countries",
children: [
{label:"IN",value:"IN", title: "IN"},
{label:"TH",value:"TH", title: "TH"},
{label:"SG",value:"SG", title: "SG"}
]
},{
label: "fields",
value: "fields",
children: [
{label: "Finance", value: "Finance",title: "Finance"},
{label: "Services", value: "Services",title: "Services"}
]
}
]
}