首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在javascript中将json的字段转换为数组的最快方法是什么?

在javascript中将json的字段转换为数组的最快方法是什么?
EN

Stack Overflow用户
提问于 2020-11-12 16:51:54
回答 1查看 20关注 0票数 0

我有一个JSON文件,其内容如下所示,我想用数组替换每个字段的内容。

代码语言:javascript
运行
复制
{
    "ID": "GO:0051345",
    "Description": "positive regulation of hydrolase activity",
    "GeneRatio": "3/5",
    "BgRatio": "464/15405",
    "pvalue": 0.000259498331261799,
    "p_adjust": 0.0446337129770295,
    "qvalue": 0.0169356805665595,
    "geneID": "Ptpa/Wdr35/Dnajb11",
    "Count": 3
}

我使用以下代码实现了期望的结果:

代码语言:javascript
运行
复制
GO_data = fs.readFileSync('my_data.json');
GO_data = JSON.parse(GO_data);
var data_header = Object.keys(GO_data);
// enumerate its property names
for (var prop in GO_data) { 
    var arr = [];
    arr.push(GO_data[prop]);
    GO_data[prop] = arr;
}
//write the converted json
fs.writeFileSync('my_data_arr.json', JSON.stringify(GO_data), 'utf8');

“my_data_arr.json”的内容如下(如所需),

代码语言:javascript
运行
复制
{
    "ID": [
        "GO:0051345"
    ],
    "Description": [
        "positive regulation of hydrolase activity"
    ],
    "GeneRatio": [
        "3/5"
    ],
    "BgRatio": [
        "464/15405"
    ],
    "pvalue": [
        0.000259498331261799
    ],
    "p_adjust": [
        0.0446337129770295
    ],
    "qvalue": [
        0.0169356805665595
    ],
    "geneID": [
        "Ptpa/Wdr35/Dnajb11"
    ],
    "Count": [
        3
    ]
}

我想学习一种更好、更快的方法来实现同样的目标。有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-12 16:53:51

您不需要分别创建数组并将其推入其中。只需使用数组文本中的值:

代码语言:javascript
运行
复制
for (var prop in GO_data) {
    GO_data[prop] = [GO_data[prop]];
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64808193

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档