我正在从维基百科中提取 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/