JSON數據也許你們都很陌生,而對我來說屬於半成品,因爲項目問題,作web雖然用的是JSON數據格式傳輸,可是關於解析這一塊還真不知道該注意什麼,更不知道它是如何解析的,因爲最近要把串口通訊協議與此一致,因此,今天下午特意瞭解了一下JQuery.parseJSON()函數的相關知識,在此作一次摘錄,成爲本身的東西。web
嚴格的JSON數據格式:json
(1)若是想在網頁正確顯示本身想要的數據,僅僅經過.parseJSON(jsonstring)函數解析不行,關鍵在於裏面的參數,即JSON數據格式正確與否:函數
(JSON要求:屬性名稱必須加雙引號,若是對應的屬性值是字符串也必須用雙引號,不容許是單引號,即所謂的「格式無缺」!)spa
若是傳入一個格式不無缺的JSON字符串將拋出一個JS異常:如:{id:1};對象
(2)另外,JSON標準不容許字符串中出現「控制字符」,如「\t」和「\n」,解決這類問題需用反轉義的方式,以下正確語句:ip
$.parseJSON('{"name":"ysq\\txzh\\n"}');字符串
(3)parseJSON()函數屬於全局的jQuery對象;string
(4)jQuery.parseJSON()函數的返回值爲任意類型,返回解析指定的JSON字符串後的JavaScript的表示。object
(5)關於jsonstring參數用法的舉例以下:通信
0一、var result1 = $.parseJSON("{}"); // 空的object對象;
0二、var result2 = $.parseJSON('{"name":"ysq","age":25}'); // 一個object對象;
alert(result2.name); // ysq;
0三、var result3 = $.parseJSON('[1,true,"ysq"]'); // object對象;
alert(result3[2]); // ysq;
0四、var result4 = $.parseJSON('true'); // 布爾值:true;
0五、var result5 = $.parseJSON('null'); // null;
0六、var result6 = $.parseJSON('0'); // 整數:0;
0七、var result7 = $.parseJSON('"專一"'); // 字符串值:專一;
0八、var result8 = $.parseJSON("\"專一\"");// 同上;
/ ********** 如下是無效的JSON字符串或很是規的參數值 ***********/
0九、var result9 = $.parseJSON(100);// 1.9以前返回null,以後返回100;
0十、var result10 = $.parseJSON(1.23);// 同上,返回1.23;
0十一、var result11 = $.parseJSON(true);// 同上,返回true;
0十二、var result12 = $.parseJSON(null);// 返回null;
01三、var result13 = $.parseJSON('''');// 1.9前返回null,後拋出錯誤;
01四、var result14 = $.parseJSON(undefined);// 同上;
01五、var result15 = $.parseJSON("undefined");// 拋出錯誤;
01六、var result16 = $.parseJSON("12x;xx'無效的JSONx456");// 同上;
01七、var result17 = $.parseJSON('{name:"ysq",age:1}');// 同上;
01八、var result18 = $.parseJSON('{"name":\'ysq\',"age":1}');// 同上;
01九、var result19 = $.parseJSON('{"name":"ysq\txzh\n"}');// 同上;