jQuery.parseJSON()方法
實例
解析一個 JSON 字串
$(function () {
var obj = jQuery.parseJSON('{"name":"John"}');
alert( obj.name === "John" );
})
定義和用法
$.parseJSON() 函數用於將符合標準格式的的JSON字串轉為與之對應的JavaScript對象。
注意:傳入格式有誤的 JSON 字串可能導致拋出異常。例如,下麵這些無效的 JSON 字串:
"{test: 1}" //test是屬性名稱,必須加雙引號 "{'test': 1}" //test是屬性名稱,必須用雙引號(不能用單引號) "'test'" //test是屬性名稱,必須用雙引號(不能用單引號) ".1" //number 必須以數字開頭; "0.1" 將是有效的 "undefined" //undefined 不能表示一個 JSON 字串; null可以 "NaN" //NaN 不能表示一個 JSON 字串; 用Infinity直接表示無限也是不允許的
JSON標準不允許"控制字元"如跳位字元或換行符,例如:
// 多數情況下,它會拋出一個錯誤,因為JS解析器會將字串中的\t或\n等轉義直接視作字面值,起到Tab或換行的效果。 $.parseJSON('{"testing":"1\t2\n3"}')
正確寫法應該如下(使用兩個反斜杠,以免被JS解析器直接轉義\t或\n):
$.parseJSON('{"testing":"1\\t2\\n3"}')
注意:在jQuery 1.9之前(不含1.9):如果傳入一個空字元串、null或undefined,該函數將返回null,而不是拋出一個錯誤,即使它不是有效的JSON字串。
語法
$.parseJSON( json )
參數 | 描述 |
---|---|
json | String類型 需要解析並轉為JS對象的JSON格式字串 |