我有一个复杂的数据结构,需要转换为JSON。问题是我的字段名称和值在数组中。
例如,我有以下内容(从我的代码库简化):
let SampleData = [
{ Field: 'Key', Value: '7'},
{ Field: 'City', Value: 'Some City'},
{ Field: 'Description', Value: 'Some Description'}
];
Run Code Online (Sandbox Code Playgroud)
基本上,我的数据是一个数组,其中第一个元素是数据库列名称,第二个元素是列中的数据。我正在尝试获取一个JSON对象,该对象是:
{ Key: 7, City: 'Some City', Description: 'Some Description' }
Run Code Online (Sandbox Code Playgroud)
我真正的代码具有字段和数据是对象内的结构,所以不能简单地使用的Object.create()或Object.assign()据我可以得到工作。
我尝试遍历以构建一个简单的字符串,然后使用JSON.parse对其进行分解,但是对于我认为会更简单的操作而言,这似乎有很多开销。
如您所问,这是如何做的:
let array = [{
Field: 'Key',
Value: '7'
},
{
Field: 'City',
Value: 'Some City'
},
{
Field: 'Description',
Value: 'Some Description'
}
];
// #1 Mapping the array to an object...
let obj = {};
array.forEach(item => obj[item.Field] = item.Value);
// #2 Converting the object to JSON...
let json = JSON.stringify(obj);
console.log(json);Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6823 次 |
| 最近记录: |