如果我對無效字符串使用JSON.parse會發生什麼?它會返回一個錯誤代碼,或只是打破腳本?解析無效JSON
跨瀏覽器的行爲是否一致?對於較老的瀏覽器,json2.js是否也具有相同的行爲?
上下文:我的腳本從不同的來源收集JSON字符串並解析它們。如果字符串格式不正確,我希望我的腳本忽略它並轉到下一個。
如果我對無效字符串使用JSON.parse會發生什麼?它會返回一個錯誤代碼,或只是打破腳本?解析無效JSON
跨瀏覽器的行爲是否一致?對於較老的瀏覽器,json2.js是否也具有相同的行爲?
上下文:我的腳本從不同的來源收集JSON字符串並解析它們。如果字符串格式不正確,我希望我的腳本忽略它並轉到下一個。
它會拋出一個可捕獲的錯誤。在正確的瀏覽器上,it is a SyntaxError
。 JSON2的實現mirrors this.
它會爲任何無效語法拋出錯誤。如果您要解析的JSON格式不正確,請使用try/catch
:
try {
obj = JSON.parse(x)
} catch(e) {
obj = {}
}
你在使用什麼語言和庫? – 2012-01-30 19:59:59
這可以通過[閱讀手冊]很快得到解答(https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/JSON/parse) – Quentin 2012-01-30 20:03:23
@Quentin thx鏈接 – Christophe 2012-01-30 20:20:21