Javascript:JSON.stringify 未按预期工作

标签 javascript json stringify

我正在从维基百科中提取 JSON 数据。但是,我不能让它整齐地进行字符串化,我不明白为什么。

这是我的代码。

request({url:formQuery(query), encoding:"utf8"}, (err, res, body) => {
    if (err) handleErr(err)
    console.log(JSON.stringify(body, null, 3))
})

如果我只使用普通的 console.log(body),JSON 输出如下:

{"continue":{"rvcontinue":"20160314150329|710029514","continue":"||"},"query":{"normalized":[{ ...

但是如果我使用 stringify(如上),它看起来像这样:

"{\"continue\":{\"rvcontinue\":\"20160314150329|710029514\",\"continue\":\"||\"},\"query\":{\"normalized\":[{ ...

Stringify 在字符串的开头添加引号并转义后续引号。

为什么会这样?欢迎任何帮助。

最佳答案

您的 JSON 数据没有问题,函数将斜杠添加到输出中,因为输入中有引号。不必转义属性名称周围的引号以避免在解析 JSON 字符串/输出时发生冲突

关于Javascript:JSON.stringify 未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36689980/

相关文章:

javascript - 如何从 JQuery 的最后一条记录开始进行 JSON 循环

javascript - Angular 可编辑滤波器输入和输出数据

javascript - Cckeditor插件: insert fake element add unwilling <p> tags before and after

Javascript DIV 保留在任何表格的右上角

javascript - NodeJS 和 EJS 的 JSON 字符串化问题

javascript - 使用 JSON.stringify 引用值

javascript - HTTP 请求 JSON : Unexpected . 解析错误 - 如何消除它?

java - TFL 开放数据的 JSON 解析

javascript - 在 HTML 结构中打印 JSON 数据问题

javascript - 如何解析带有日期属性的 JSON 字符串