JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,以文本格式存儲和傳輸數據。JSON是Web應用程序中最常用的數據格式之一,通常用于API的數據傳輸。
JSON的語法類似于JavaScript對象。基本數據類型包括數字、布爾值、字符串以及null和undefined兩個特殊值。JSON還支持數組和對象(類似于JavaScript中的數組和對象),可以通過嵌套使用來表示復雜的數據結構。
// JSON示例 { "name": "Tom", "age": 25, "isMale": true, "hobbies": ["reading", "swimming"], "address": { "city": "Beijing", "street": "XX Road" } }
當使用JSON作為數據傳輸格式時,需要將數據序列化為JSON字符串,在傳輸過程中再將JSON字符串反序列化回原始數據結構。JavaScript中提供了內置的JSON對象,可以通過其提供的方法進行序列化和反序列化操作。
// JavaScript中使用JSON對象序列化和反序列化JSON字符串 const data = { name: 'Tom', age: 25, isMale: true, hobbies: ['reading', 'swimming'], address: { city: 'Beijing', street: 'XX Road' } } // 序列化為JSON字符串 const jsonStr = JSON.stringify(data) console.log(jsonStr) // 反序列化為原始數據結構 const parsedData = JSON.parse(jsonStr) console.log(parsedData)
在Web應用程序中,常用的一種使用場景是通過AJAX從服務器獲取JSON格式的數據,并將數據解析為JavaScript對象,進行后續的操作。使用JavaScript中的fetch API可以方便地發送AJAX請求,并指定返回數據的格式為JSON。
// Fetch API獲取JSON數據示例 fetch('url/to/json/data') .then(response =>response.json()) .then(data =>{ console.log(data) // 對JSON格式的數據進行操作 }) .catch(err =>console.error(err))