gpt4 book ai didi

javascript - 处理非理想 JSON 的最佳方式?

转载 作者:行者123 更新时间:2023-11-29 23:24:13 24 4
gpt4 key购买 nike

我目前正在尝试读取一个 .vdf 文件,它是 Valve's proprietary "KeyValue" file format 。我找到了一个简单的 VDF to JSON converter,它似乎很适合我的需要,但 JSON 输出的格式不太理想。例如,对于以下 VDF 输入:

"LibraryFolders"
{
"TimeNextStatsReport" "1523464730"
"ContentStatsID" "8627456721266182211"
"1" "G:\\Steam"
}

我得到以下 JSON 输出:

{
"LibraryFolders": {
"1": "G:\\\\Steam",
"TimeNextStatsReport": "1523464730",
"ContentStatsID": "8627456721266182211"
}
}

我需要一种方法来获取 LibraryFolders 对象中具有严格数字名称(1、2、3 ...)的所有变量,并将它们放入数组中,去除 TimeNextStatsReportContentStatsID 字段。如何做到这一点?

我认为最容易处理的输出如下:

{
"LibraryFolders": [
"G:\\\\Steam",
...
]
}

省略号显然表示任何以数字命名的字段的延续。

最佳答案

解析 JSON 后,我们可以组合使用:Object.entriesArray.filterArray.map,以实现所需的格式。

let object = {
"LibraryFolders": {
"1": "G:\\\\Steam",
"TimeNextStatsReport": "1523464730",
"ContentStatsID": "8627456721266182211",
"2": "Other Numeric key",
}
}

object.LibraryFolders = Object.entries(object.LibraryFolders)
.filter(([key, value]) => Number(key)) // Filter non numeric keys
.map(([, value]) => value); // We only keep the value, not the key


console.log(object);

关于javascript - 处理非理想 JSON 的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49764462/

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