Javascript 用 html unicode 替换制表符字符以进行 JSON 解析

Javascript replacing tab char with html unicode for JSON parsing

本文关键字:JSON 解析 字符 制表符 html unicode 替换 Javascript      更新时间:2023-09-26

在IE10中,要解析包含制表符的JSON字符串,它需要采用Unicode。

例如:

jsonString="{'"mynameproperty'":'"Chetan    Shettigar'"}"

在 IE10 中解析上述字符串失败,因为存在制表符"Chetan Shettiga"

可接受的字符字符串Chetan	Shettigar

我正在寻找一种可以将制表符替换为相应 html unicode 的解决方案。也许正则表达式可以解决这个问题,但是还有其他简单的方法吗?

要用 html 字符代码	替换所有制表符,您可以使用 replace() 函数,如下所示:

jsonString="{'"mynameproperty'":'"Chetan    Shettigar'"}".replace(/'t/g, '	');

尽管如注释中所述,您应该使用 't 而不是 html 字符代码,如下所示:

jsonString="{'"mynameproperty'":'"Chetan    Shettigar'"}".replace(/'t/g, '''t');

试试这个:

var jsonString="{'"mynameproperty'":'"Chetan    Shettigar'"}";
jsonString = jsonString.replace(/'t/g, "''t");
var obj = JSON.parse(jsonString);
document.body.innerHTML = obj.mynameproperty;

JSFiddle 中的演示