JSON学习
Posted 大盘鸡嘹咋咧
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON学习相关的知识,希望对你有一定的参考价值。
JSON:
1. 概念: javascript Object Notation JavaScript对象表示法
Person p = new Person();
p.setName("张三");
p.setAge(23); ============》 var p = {"name":"张三","age":23,"gender":"男"};
p.setGender("男");
* json现在多用于存储和交换文本信息的语法
* 进行数据的传输
* JSON 比 XML 更小、更快,更易解析。
2. 语法:
1. 基本规则
* 数据在名称/值对中:json数据是由键值对构成的
* 键用引号(单双都行)引起来,也可以不使用引号
* 值的取值类型:
1. 数字(整数或浮点数)
2. 字符串(在双引号中)
3. 逻辑值(true 或 false)
4. 数组(在方括号中) {"persons":[{},{}]}
5. 对象(在花括号中) {"address":{"province":"陕西"....}}
6. null
* 数据由逗号分隔:多个键值对由逗号分隔
* 花括号保存对象:使用{}定义json 格式
* 方括号保存数组:[]
2. 获取数据:
1. json对象.键名
2. json对象["键名"]
3. 数组对象[索引]
4. 遍历
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script> //1.定义基本格式 var person = {"name": "张三", age: 23, ‘gender‘: true}; //alert(person); //获取name的值 //var name = person.name; var name = person["name"]; // alert(name); //2.嵌套格式 {}———> [] var persons = { "persons": [ {"name": "张三", "age": 23, "gender": true}, {"name": "李四", "age": 24, "gender": true}, {"name": "王五", "age": 25, "gender": false} ] }; // alert(persons); //获取王五值 var name1 = persons.persons[2].name; // alert(name1); //3.嵌套格式 []———> {} var ps = [{"name": "张三", "age": 23, "gender": true}, {"name": "李四", "age": 24, "gender": true}, {"name": "王五", "age": 25, "gender": false}]; //alert(ps); //获取李四值 alert(ps[1].name); ======================================= //获取person对象中所有的键和值 //for in 循环 /* for(var key in person){ //这样的方式获取不行。因为相当于 person."name" //alert(key + ":" + person.key); alert(key+":"+person[key]);//这样就是json对象["键名"],所以可行 }*/ //获取ps中的所有值 for (var i = 0; i < ps.length; i++) { var p = ps[i]; for(var key in p){ alert(key+":"+p[key]); } } </script> </head> <body> </body> </html>
以上是关于JSON学习的主要内容,如果未能解决你的问题,请参考以下文章
Xitrum学习笔记08 - JavaScript and JSON
json 可视代码工作室Angular with Firebase片段
错误代码:错误域 = NSCocoaErrorDomain 代码 = 3840“JSON 文本没有以数组或对象和允许未设置片段的选项开头。”