gpt4 book ai didi

json - 如何格式化 JSON 对象键/值对

转载 作者:太空宇宙 更新时间:2023-11-03 21:59:08 25 4
gpt4 key购买 nike

我是 Nodejs 新手,现在我可以从数据库中获取数据并显示为键/值对的 REST API。我的输出如下所示

[{"id":"793","actionname":"test_bsc_interface","actionid":"100"}].

但我需要格式化为

{ "header" : [id,actionname,actionid],

"values" : [793 ,test_bsc_interface,100] ],}.

我尝试使用 JSON.stringfy 并检查了几个网站,但它不起作用。

任何人都可以帮助我通过哪个链接我应该通过或接近。

最佳答案

最简单的方法是使用 underscorelodash格式化它的模块:

var _ = require('lodash');

var data = [{"id":"793","actionname":"test_bsc_interface","actionid":"100"}];
var result = _.map(data, function(o) {
return {headers: _.keys(o), values : _.values(o)}
});
console.dir(result);

输出是:

[ 
{
headers: [ 'id', 'actionname', 'actionid' ],
values: [ '793', 'test_bsc_interface', '100' ]
}
]

要得到你想要的结果,只需执行 result[0]

请注意,我使用 _.map() 而不是 data[0],因为这适用于具有超过 1 个项目的数组(查询的数组结果)。

根据您的评论修改答案(1 个标题行和数组中的所有值行):

var _ = require('lodash');

var data = [
{ id: '714', actionname: 'test_bsc_interface', actionid: '100' },
{ id: '715', actionname: 'list_all_available_interfaces', actionid: '103' },
{ id: '716', actionname: 'check_tt', actionid: '101' }
];

var result;

if (_.size(data) > 0) {
result = {
headers: _.keys(data[0]),
values: _.map(data, function(o) {
return _.values(o);
})
};
}

console.dir(result);

输出是:

{ 
headers: [ 'id', 'actionname', 'actionid' ],
values: [
[ '714', 'test_bsc_interface', '100' ],
[ '715', 'list_all_available_interfaces', '103' ],
[ '716', 'check_tt', '101' ]
]
}

关于json - 如何格式化 JSON 对象键/值对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32218194/

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