《JSON》

idiosun發表於2020-12-23

《JSON》

<大綱>

掌握JSON語法的書寫規則

掌握JSON與JavaScript的互動技巧

掌握JSON與Java之間的序列化與反序列化

1.JSON介紹

  • 輕量級的資料交換格式
  • 獨立於程式語言的文字格式來儲存和表示資料
  • 利於人閱讀和編寫,同時也易於機器解析和生成

2.JSON語法規則

  • JSON是一個標記符的序列。這套標記符包含六個構造字元字串數字和三個****字面名****。

  • JSON是一個序列化的物件陣列

  • 6個構造字元:[]{};:

  • 物件由花括號括起來的逗號分割的成員構成,成員是字串鍵和上文所述的由逗號分割的鍵值對組成

  • 陣列是由方括號括起來的一組值構成

  • JSON可以是物件陣列數字字串或者三個字面值(false、null、true)中的一個。

  • 例如:

    [
    	{
    		"empno": 7369,
    		"ename": "李寧",
    		"job": "軟體工程師",
    		"hiredate": "2017-05-12",
    		"salary": 13000,
    		"dname": "研發部"
    	},
    	{
    		"empno": 7499,
    		"ename": "王樂",
    		"job": "客戶經理",
    		"hiredate": "2017-04-22",
    		"salary": 10000,
    		"dname": "市場部",
    		"customers": [
    			{
    				"cname": "李東"
    			},
    			{
    				"cname": "劉楠"
    			}
    		]
    	}
    ]
    

3.JSON與字串互相轉化

  • JSON.parse()方法將字串轉換為JSON物件

        var str = "{\"class_name\":\"五年級四班\"}";
        var json = JSON.parse(str);
        console.log(str);
        console.log(json);
        document.write("班級:" + json.class_name);
    
  • JSON.stringify()方法將JSON物件轉化為字串

    	var json1 = {"class_name" : "五年級四班"};
    	var str1 = JSON.stringify(json1);
    	console.info(json1);
    	console.info(str1);
    	var json2 = {};
    	json2.class_name = "五年級五班";
    	json2.floor = "逸夫樓四層";
    	json2.teacher = "王義夫";
    	console.info(json2);
    

4.JSON與Java互動

  • Java的JSON工具包有FastJson、JackJson等

  • FastJson是阿里巴巴著名的JSON序列化和反序列化工具包

  • FastJson擁有大量使用者,API簡單,效率高

  • FastJson序列化與JSON註解

    下次再寫

相關文章