JSON格式很像英語。我可以被稱為“自我描述”,它非常容易理解和直觀。JSON比XML格式更易於讀寫。JSON不依賴於調用編程語言,它支持數組、對象、字符串、數字和值。JSON是為未來設計的,其中機器可以解析和生成代碼。它深受JavaScript編程語言標準ECMA-262第三版(1999年12月)的影響。雖然JSON是一種完全獨立於語言的格式,但它使用了C語言家族(即C, c++, Python, Java等)中常用的約定。
JSON結構有兩個組成部分:
- Multiple instances of name/value pairs this can be an object, record, struct, dictionary, hash table, keyed list, or associative array.
- A value list that is ordered this can be an array, vector, list, or sequence.
這些是通常用於數據交換的通用數據結構。JSON被用於幾乎所有需要在兩個模塊之間進行數據交換的地方,無論是基於JavaScript的應用程序(包括瀏覽器擴展和網站),還是Rest API調用,無論是基於Flask的Python應用程序還是基於Java的微服務。
JSON格式用於序列化結構化數據,並通過網絡連接以一種真正可移植的方式從一台機器傳輸到另一台機器。例如,JSON用於在服務器和web應用程序之間傳輸數據。JSON的一些常見特征是:
JSON易於讀寫。
它是一種輕量級的基於文本的交換格式。
JSON與語言無關。
JSON是可移植的。
JSON是標準化的。
讓我們看一個JSON對象的例子。下麵的表示顯示了存儲員工記錄的JSON對象
{"員工":[{"id": 55027103, "姓名":"Harish Jain", "郵箱":"harish.jain@xxx.com", "部門":"雲工程","基地位置":"Gurugram", "入職日期":"2014-05-11 t09:28 . 56.321-05:30", "職位":"高級經理","主管":"Ajay Makhen", "hod": "Sanjeev Puri"}, {"id": 55026900, "姓名":"Ritu Mittal", "郵箱":"ritu.mittal@xxx.com", "部門":"雲工程","基地位置":"Gurugram", "入職日期":"2019-05-11 t09:28 . 56.321-05:30", "職位":"2014-05-11 t09:28 . 56.321-05:30"“工程師”,“主管”:“Harish Jain”,“hod”:“Sanjeev Puri”}]}
這個JSON對象有一個2條記錄的列表。每條記錄有兩個用冒號分隔的值。左邊一列的值是鍵(id、名稱等),右邊一列的值是鍵的值(5502710、Harish Jain等)。值寫在雙引號中。類型為String。
因此在JSON中,所有鍵都必須是字符串。此外,在最後一個記錄的末尾添加逗號後添加一個新記錄。此外,除了最後一個鍵-值對之外,每個鍵-值對後麵都有一個逗號,表示當前記錄的結束。讓我們為這個JSON做一個簡單的網頁,看看效果如何。將以下代碼保存在一個名為json.html的文件中,並在穀歌chrome瀏覽器中打開該文件。
員工記錄
你應該得到這樣的輸出。