javascript - 通过删除属性但保留其内容来转换对象
问题描述
我正在尝试找到一种“减少”对象的方法。这就是我所拥有的
{ _attributes: { name: 'titolo', description: 'il titolo della sezione' },
field:
[ { _attributes:
{ name: 'titolo',
type: 'input',
label: 'titolo',
value: 'titolo' } },
{ _attributes:
{ name: 'colore',
type: 'input',
select: 'giallo,blu',
label: 'seleziona il colore',
value: 'titolo' } }
]
}
这就是我想要的
{ name: 'titolo', description: 'il titolo della sezione' ,
field:
[
{ name: 'titolo',
type: 'input',
label: 'titolo',
value: 'titolo' } ,
{ name: 'colore',
type: 'input',
select: 'giallo,blu',
label: 'seleziona il colore',
value: 'titolo' }
]
}
基本上删除 _attributes 属性,但保留其内容。我想知道除了循环对象之外是否有一些聪明的方法。
解决方案
let obj = {
_attributes: {
name: 'titolo',
description: 'il titolo della sezione'
},
field: [{
_attributes: {
name: 'titolo',
type: 'input',
label: 'titolo',
value: 'titolo'
}
},
{
_attributes: {
name: 'colore',
type: 'input',
select: 'giallo,blu',
label: 'seleziona il colore',
value: 'titolo'
}
}
]
}
obj = { ...obj._attributes, ...obj };
delete obj._attributes;
obj.field = obj.field.map(el => el._attributes);
console.log(obj);
推荐阅读
- java - 带有文件的 AmazonS3Client.putObject 保持对文件的开放引用
- c - 如何在c中使用exec多次运行ping
- c - 字符串文字可以与 char* 连接吗?
- java - 以下类的超类型无法解析。请确保您在类路径中具有所需的依赖项:
- mongodb - 在创建期间强制 MongoDB 副本集使用 IP 而不是主机名
- javascript - 在对象数组中出现空错误
- python - 创建空数据框并向其中添加行
- sql - 如何使用 DataGrip 通过 SSH 连接到数据库
- tomcat - 如何通过 Windows 服务器中的 IP 地址使 Apache Tomcat 服务器可访问
- c - 在 C 中显示最高和最低数值