2012-01-30 82 views
-2

如果我对无效字符串使用JSON.parse会发生什么?它会返回一个错误代码,或只是打破脚本?解析无效JSON

跨浏览器的行为是否一致?对于较老的浏览器,json2.js是否也具有相同的行为?

上下文:我的脚本从不同的来源收集JSON字符串并解析它们。如果字符串格式不正确,我希望我的脚本忽略它并转到下一个。

+0

你在使用什么语言和库? – 2012-01-30 19:59:59

+1

这可以通过[阅读手册]很快得到解答(https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/JSON/parse) – Quentin 2012-01-30 20:03:23

+0

@Quentin thx链接 – Christophe 2012-01-30 20:20:21

回答

4

它会为任何无效语法抛出错误。如果您要解析的JSON格式不正确,请使用try/catch

try { 
    obj = JSON.parse(x) 
} catch(e) { 
    obj = {} 
}