JSON的语法规则、数据格式及使用实例讲解
1.java script object notation 文件的文件类型为.json
2.json是存储和交换文本信息的语法。类似xml轻量级的文本数据交换格式
3.json语法规则:
1 数据在名称/值对中:如"name":"菜鸟教程"
2.数据由逗号分隔
3.大括号保存对象
4.中括号保存数组
json值:可以是数字(整数或者浮点数),字符串在双括号内,逻辑值,数组,对象,null
4.json对象在大括号{}中书写,对象中可以保护多个名称/值对
json数组在中括号中书写,数组中,可以包含多个对象
如{"sites":[{"name":"测试1","url":"www.baidu.com"},{"name":"测试1","url":"www.baidu.com"}]}
5.可以使用.来访问对象的值,如
var myobj={"name":"runoob","id":1}
var x=myobj.name;
或者x=myobj["name"]
循环对象:
for(x in myobj){
document.getelementbyid("demo").innerhtml+=myobj[x]+"
}
6.json对象中可以包含另外一个json对象
可以修改json对象的值:myobj.name="ceshi"
7.使用delete删除对象属性
delete myobj.name
json数据格式:主要由对象{ }和数组[ ]组成:
其中对象包括键值对(属性:属性值){key: value},value 可为 str,num,list,obj。取值使用 objcet.key
{key: value, key2:value2,} 键:值用冒号分开,对间用,连接
数组包含元素:num,str,list,objcet 都可以,利用索引访问 [index],用.连接各个值:
e.g:
var stu = {"student": //stu 对象包含student的key,值为一个数组 [ //数组的每一个值为一个具体的学生对象 {"name": "tom","grade":1, "age":11, "gender": "m"}, //学生对象的键为名字,值为对应属性 {"name": "jerry", "grade":1, "age":10, "gender": "m"} //每个属性对应的是一个key,value对 ], "classroom": {"class1": "room1", "class2": "room2"} //对象的值,嵌套对象 };
读取数据:
document.write(stu.student[1].name); // 输出第二个学生名 document.write(stu.student[0].age); // 输出第一个学生年龄 document.write(stu.classroom.class1); // 输出 classroom 的 class1 值 document.write(stu["classroom"].class2); // 也可用中括号键访问对象值
8.json.parse()
json通常用于与服务端交换数据。在接受服务器数据时一般都是字符串
我们通常可以是用json.parse()方法将数据转换为js对象
9.
eval(string):函数可计算某个字符串,并执行其中的的 javascript 代码。
eval("var a=1"); // 声明一个变量a并赋值1。 eval("2+3"); // 执行加运算,并返回运算值。 eval("mytest()"); // 执行mytest()函数。 eval("{b:2}"); // 声明一个对象。