代码前端综合专辑React-Native

一分钟看懂json

2017-04-14  本文已影响163人  HarryPang

json是什么?其实很简单,json(JavaScript Object Notation)javaScript 对象表示法 是一种存储数据的方式,json比xml更快更好用
xml和json类似之处:
JSON 是纯文本
JSON 具有“自我描述性”(人类可读)
JSON 具有层级结构(值中存在值)
JSON 可通过 JavaScript 进行解析
JSON 数据可使用 AJAX 进行传输
xml和json不同之处:
没有结束标签
更短
读写的速度更快
能够使用内建的 JavaScript eval() 方法进行解析
使用数组
不使用保留字

第一步:创建json对象
var xiaomin = { "name" : "小敏", "age" : 6};
这样就创建了一个JSON 对象
JSON对象由 名称/值对组成 名称和值之间用冒号:隔开
名称必须用双引号" 包含起来
值可以是任意javascript数据类型,字符串,布尔,数字 ,数组甚至是对象
不同的名称/值对之间用 逗号 , 隔开

注意这里:xiaomin是一个对象!!!

第二步:访问json对象

<script>
var xiaomin = { "name"  :  "小敏",   "age" : 6}; 
 
document.write("名字: " + xiaomin.name + "<br>");
document.write("年龄: " + xiaomin.age + "<br>");
</script>

json数组的创建,访问(和访问数组的方式一样,通过下标)

//创建json数组
var heros= 
[
    {"name":"盖伦","hp":616},
    {"name":"提莫","hp":313},
    {"name":"死哥","hp":432},
    {"name":"火女","hp":389}
]
 //访问数组
document.write( "第4个英雄是:" +  heros[3].name);

结果是:火女

第三步:json字符串与javascript对象的转换

eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成 JavaScript 对象。必须把文本包围在括号中,这样才能避免语法错误:

<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>
上一篇下一篇

猜你喜欢

热点阅读