Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何避免JSON中的反斜杠?_Javascript_Json_Firefox - Fatal编程技术网

Javascript 如何避免JSON中的反斜杠?

Javascript 如何避免JSON中的反斜杠?,javascript,json,firefox,Javascript,Json,Firefox,我正在使用Firefox的原生JSON.parse()解析一些JSON字符串,其中包含正则表达式作为值,例如: var test = JSON.parse('{"regex":"/\\d+/"}'); 上面的'\d'抛出了一个JSON.parse()异常,但在使用eval时效果很好(这是我试图避免的) 我想要的是在正则表达式中保留“\”——是否有其他JSON友好的方法来转义它?您需要转义已经存在的转义反斜杠:)如下所示: var test = JSON.parse('{"regex":"/\\

我正在使用Firefox的原生JSON.parse()解析一些JSON字符串,其中包含正则表达式作为值,例如:

var test = JSON.parse('{"regex":"/\\d+/"}');
上面的'\d'抛出了一个JSON.parse()异常,但在使用eval时效果很好(这是我试图避免的)


我想要的是在正则表达式中保留“\”——是否有其他JSON友好的方法来转义它?

您需要转义已经存在的转义反斜杠:)如下所示:

var test = JSON.parse('{"regex":"/\\\\d+/"}');

你可以在这里测试一下:

谢谢,这很有魅力!你能解释一下我为什么要逃走吗?我本以为,为了解析器的目的,转义一次“\b”就足够了。。。在幕后是否还有另一层解析需要它?另外,感谢JSFIDLE链接-我在测试时使用了语法分析器,但是当我尝试使用“\\\\d”时,它告诉我需要转义一个反斜杠!