JSON(JavaScript 物件表示法)是一種輕量級資料交換格式,易於人類閱讀和編寫,易於機器解析和產生。由於其簡單性和與大多數程式語言的兼容性,它已成為 Web 伺服器和用戶端之間資料交換的標準。
JSON 是一種基於文字的格式,使用鍵值對和陣列表示結構化資料。它源自 JavaScript,但廣泛用於許多程式設計環境。
{ "name": "John Doe", "age": 30, "isStudent": false, "courses": ["Math", "Science", "History"], "address": { "street": "123 Main St", "city": "New York", "zip": "10001" } }
{ "key": "value" }
僅限雙引號:
字串必須用雙引號 (") 括起來。
無尾隨逗號:
JSON 不允許在最後一個鍵值對或陣列元素後使用尾隨逗號。
支援巢狀結構:
物件和陣列可以相互嵌套。
JavaScript 提供了內建方法來將 JSON 字串解析為物件以及將物件字串化為 JSON。
將 JSON 字串轉換為 JavaScript 物件。
const jsonString = '{"name": "John", "age": 30}'; const jsonObject = JSON.parse(jsonString); console.log(jsonObject.name); // Output: John
將 JavaScript 物件轉換為 JSON 字串。
const jsObject = { name: "Jane", age: 25 }; const jsonString = JSON.stringify(jsObject); console.log(jsonString); // Output: {"name":"Jane","age":25}
{ "theme": "dark", "language": "en", "showNotifications": true }
{ "location": "New York", "temperature": 25, "forecast": ["Sunny", "Cloudy", "Rain"] }
const user = { name: "Alice", age: 28 }; localStorage.setItem("user", JSON.stringify(user)); const retrievedUser = JSON.parse(localStorage.getItem("user")); console.log(retrievedUser.name); // Output: Alice
JSON 支援數組作為值。
const jsonString = '{"students": ["Alice", "Bob", "Charlie"]}'; const jsonObject = JSON.parse(jsonString); console.log(jsonObject.students[1]); // Output: Bob
使用點表示法或方括號表示法存取巢狀值。
{ "name": "John Doe", "age": 30, "isStudent": false, "courses": ["Math", "Science", "History"], "address": { "street": "123 Main St", "city": "New York", "zip": "10001" } }
使用 try-catch 區塊來處理解析無效 JSON 時的錯誤。
{ "key": "value" }
const jsonString = '{"name": "John", "age": 30}'; const jsonObject = JSON.parse(jsonString); console.log(jsonObject.name); // Output: John
const jsObject = { name: "Jane", age: 25 }; const jsonString = JSON.stringify(jsObject); console.log(jsonString); // Output: {"name":"Jane","age":25}
Feature | JSON | XML | YAML |
---|---|---|---|
Readability | High | Moderate | High |
Verbosity | Low | High | Low |
Compatibility | High | High | Moderate |
Data Types | Limited | Flexible | Flexible |
驗證 JSON:
使用 jsonlint.com 等工具來驗證 JSON 結構。
使用一致的格式:
保持一致的縮排以提高可讀性。
最小化 API 的大小:
刪除不必要的空格以實現高效率的資料傳輸。
例:
{ "theme": "dark", "language": "en", "showNotifications": true }
JSON 是現代 Web 開發的基石,提供了一種簡單而強大的方式來表示和交換資料。無論您是使用 API、存儲配置文件還是處理瀏覽器存儲,了解 JSON 對任何開發人員來說都是至關重要的。透過有效地利用 JSON,您可以建立健全、動態且可擴展的應用程式。
嗨,我是 Abhay Singh Kathayat!
我是一名全端開發人員,擁有前端和後端技術的專業知識。我使用各種程式語言和框架來建立高效、可擴展且用戶友好的應用程式。
請隨時透過我的商務電子郵件與我聯繫:kaashshorts28@gmail.com。
以上是掌握 JavaScript JSON:解析、字串化及其他的詳細內容。更多資訊請關注PHP中文網其他相關文章!