轻量级数据交换格式JSON
作者:@kuaiquxie
作者的github:https://github.com/bitebita
本文为作者原创,如需转载,请注明出处:https://www.cnblogs.com/dzwj/p/15866690.html
JSON是轻量级的数据交换格式
JSON独立于语言*
JSON是"自描述的"且易于理解
JSON 的语法是来自JavaScript 对象符号的语法,但JSON格式是纯文本。读取和生成JSON数据的代码可以在任何编程语言编写的。
JSON语法规则:
数据是名称/值对
数据由逗号分隔
花括号保存对象
方括号保存数组
<!DOCTYPE html> <html> <body> <h1>用 JSON 字符串创建对象</h1> <p id="demo"></p> <script> var text = '{"employees":[' + '{"firstName":"Bill","lastName":"Gates" },' + '{"firstName":"Steve","lastName":"Jobs" },' + '{"firstName":"Elon","lastName":"Musk" }]}'; obj = JSON.parse(text); document.getElementById("demo").innerHTML = obj.employees[1].firstName + " " + obj.employees[1].lastName; </script> </body> </html>
发送数据(JSON)到服务器
<!DOCTYPE html> <html> <body> <h2>把 JavaScript 对象转换为 JSON 字符串,然后发送到服务器。</h2> <script> var myObj = { "name":"Bill Gates", "age":62, "city":"Seattle" }; var myJSON = JSON.stringify(myObj); window.location = "/demo/demo_json.php?x=" + myJSON; </script> </body> </html>
接收数据(JSON)
<!DOCTYPE html> <html> <body> <h1>把 JSON 格式的字符串,转换为 JavaScript 对象:</h1> <p id="demo"></p> <script> var myJSON = '{ "name":"Bill Gates", "age":62, "city":"Seattle" }'; var myObj = JSON.parse(myJSON); document.getElementById("demo").innerHTML = myObj.name; </script> </body> </html>
将数据存储为文本
<!DOCTYPE html> <html> <body> <h1>通过 local storage 存储并取回数据:</h1> <p id="demo"></p> <script> var myObj, myJSON, text, obj; // 存储数据: myObj = { "name":"Bill Gates", "age":62, "city":"Seattle" }; myJSON = JSON.stringify(myObj); localStorage.setItem("testJSON", myJSON); // 取回数据: text = localStorage.getItem("testJSON"); obj = JSON.parse(text); document.getElementById("demo").innerHTML = obj.name; </script> </body> </html>
JSON和XML的区别
JSON不使用标签,而且更短,JSON的读写速度更快 ,并且可使用数组
最大的不同在于:XML必须使用XML解析器进行解析,而JSON可通过标准的JavaScript函数进行解析。
JSON比XML好在:
XML 比JSON更难解析
JSON 被解析为可供使用的Javascript对象
对于AJAX应用程序,JSON比 XML更快更易用
JSON中的字符串必须用双引号包围。
JSON中的数字必须是整数或浮点数。
JSON中的值可以是对象,数组,布尔,空值等等
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY