gpt4 book ai didi

javascript - 如何从数据库中检索数据并将它们转换为我的对象?

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

我正在使用 postgres row_to_json 函数来获取通过 JSON.stringify() 存储的数据。但是,当我检索它并执行 JSON.parse() 时,它给了我“unexpected token ,”错误消息。

我来自前端的原始数据:

{ 
"company":[
{"name":"test company"},
{"ceo":"John"}
]
}

我执行 JSON.stringify(myData.company) 并将其存储到 postgres。

当我检索它时,我有 row_to_json 函数来获取数据。

console.log(myRetrieveData) 变成了

{"{\"name\":\"test company\"}","{\"ceo\":\"John\"}"}

我使用了 JSON.parse(myRetrieveData) 并得到了“unpexted token ,”错误。

我理解 row_to_json 将其转换为 json 并且不能用于 JSON.parse 但我的其他数据需要该函数。我不确定如何解决这个问题。谁能帮我解决这个问题?非常感谢!

最佳答案

看起来您从查询中检索到的 JSON 格式不正确,无法对其进行解析。为了避免这种情况,请确保存储到数据库中的 JSON 是正确的 JSON 格式,以便对其进行解析。如果这无法实现,则必须将从数据库获得的响应修改为正确的 JSON。有了上面的数据,可以按如下方式完成。

var improperJson = '{"{\"name\":\"test company\"}","{\"ceo\":\"John\"}"}';
var properJson = improperJson.replace(/","/g, ",").replace(/^{"/, "[").replace(/"}$/, "]");
console.log(JSON.parse(properJson));//should give you the parsed JSON

关于javascript - 如何从数据库中检索数据并将它们转换为我的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39586690/

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