运行 Firefox 23.0.1,我有以下代码段:
var foo = '{ "success": false, "errtype": "barf", "message": "my message\n"}';
var what = JSON.parse(foo);
console.log(what);
在 Firebug Javascript 窗口中运行它,或者从我的网页中查看控制台日志,我得到 SyntaxError: JSON.parse: bad control character in string literal。
但这对我来说似乎是有效的 JSON,每个http://www.json.org/并且它也通过了这里的验证器: http://jsonlint.com/。
当我删除嵌入在“我的消息”末尾的“\n”时,Firefox 中的问题就消失了。其他浏览器没试过。
这是 Firefox 中的错误吗?