带有Ajax请求的Javascript JSON.parse函数n〃;新行转义字符

Javascript JSON.parse function with Ajax request and "n" new line escaped char

本文关键字:转义字符 新行 函数 parse 请求 Ajax Javascript JSON 带有      更新时间:2023-09-26

https://jsbin.com/zuhatujoqo/1/edit?js,控制台

编辑:json文件有以下行:

{"pd":"ciao ''n ste"}

我正在通过ajax调用请求一个有效的json文件
然后JSON.分析结果。

我不明白json文件中的"''''n"转义换行符发生了什么。

如果我给JSON.parse提供相同的值,它会给我不同的结果。

var result = JSON.parse(data);
console.log(result);
var result2 = JSON.parse('{"pd":"ciao ''n ste"}');
console.log(result2);

据我所知,这可能与以下事实有关:javascript在解析之前和之后都在转义(或取消转义??)字符串。

问题是我也不明白这个:

result = result.replace(/''n/g, "<br />");

我还必须转义正则表达式本身吗?

Sum:我想使用通过Ajax加载的.json文件。我希望JSON.parse完成他的工作,取消捕获返回NewLine字符的"''''n"。

感谢Bergi给我的答案,我现在明白了JSON.parse已经在做他的工作了。这是我的错,我提供了一个json文件,里面有"''''n",而不仅仅是"''''n"。

这里有一个更新的jsbin,您可以在其中看到,现在JSON.parse在不同的场景中起着相同的作用。https://jsbin.com/xezipucili/1/edit?js,控制台