JSON基础使用
1)JSON概念
- JSON 是纯文本
- JSON 具有“自我描述性”(人类可读)
- JSON 具有层级结构(值中存在值)
- JSON 可通过 JavaScript 进行解析
- JSON 数据可使用 AJAX 进行传输
相比 XML 的不同之处
- 没有结束标签
- 更短
- 读写的速度更快
- 能够使用内建的 JavaScript eval() 方法进行解析
- 使用数组
- 不使用保留字
2)JSON基本语法
- 数据在名称/值对中
- 数据由逗号分隔
- 花括号保存对象
- 方括号保存数组
名称对应值示例:
单个名称/值:
"firstName" : "John"
多个名称/值:
{ "firstName":"John" , "lastName":"Doe" }
多个对象数组:
{ "employees": [ { "firstName":"John" , "lastName":"Doe" }, { "firstName":"Anna" , "lastName":"Smith" }, { "firstName":"Peter" , "lastName":"Jones" } ] }
值的种类:
- 数字(整数或浮点数)
- 字符串(在双引号中)
- 逻辑值(true 或 false)
- 数组(在方括号中)
- 对象(在花括号中)
- null
3)文件类型
- JSON 文件的文件类型是 ".json"
- JSON 文本的 MIME 类型是 "application/json"
4)示例:
<p>First Name: <span id="fname"></span></p> <script type="text/javascript"> var employees = [ { "firstName":"Bill" , "lastName":"Gates" }, { "firstName":"George" , "lastName":"Bush" }, { "firstName":"Thomas" , "lastName": "Carter" } ]; employees[1].firstName="Jobs"; document.getElementById("fname").innerHTML=employees[1].firstName; </script>
<p> First Name: <span id="fname"></span><br /> Last Name: <span id="lname"></span><br /> </p> <script type="text/javascript"> var txt = ‘{"employees":[‘ + ‘{"firstName":"Bill","lastName":"Gates" },‘ + ‘{"firstName":"George","lastName":"Bush" },‘ + ‘{"firstName":"Thomas","lastName":"Carter" }]}‘; var obj = eval ("(" + txt + ")"); document.getElementById("fname").innerHTML=obj.employees[1].firstName document.getElementById("lname").innerHTML=obj.employees[1].lastName </script>
5)提示
eval() 函数可编译并执行任何 JavaScript 代码。这隐藏了一个潜在的安全问题。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。