syntaxError:Unexpected token JSON.parse:bad escaped character JSON.parse: bad control character in string literal 在作一个ajax应用,服务器返回json格式,由jquery分析并输出到页面上,就遇到以上的问题,百思不得其解。后来通过细节检查,发现缘由是字符串中包含一些非打印的控制字符, 其ASCII码在1--31之间,故致使出现以上异常。 知道这个缘由后,将这些不可打印字符替换为空便可,很是简单, 利用正则表达式将ASCII 值为0至31的字符替换掉便可: $str = preg_replace("|[".chr(1)."-".chr(31)."]+|",'', $str); 另外,要注意换行等特殊字符