轻量级数据交换格式-JSON概念入门

轻量级数据交换格式-JSON入门


概念

JavaScript Object Notation :JavaScript对象表示法

JSON现在对于存储和交换信息的语法
进行数据的传输
JSON 比 XML 更小、更快、更易解析

作用(早期)
在Java中:

Person p = new person();
p.setName("张三");
p.setAge(23);
p.setGender("男")

在JavaScript中

var p ={"name":"张三","age":"23","gender":"男"}

语法

基本规则

1. 数据在名称/值对中:JSON数据是由键值对构成的
		* 键用引号(单双都行)引起来,也可以不使用引号
		* 值的取值类型:
			1. 数字(整数和浮点数)
			2. 字符串(在双引号中)
			3. 逻辑值(true和false)
			4. 数组(在方括号中){"person":[{1},{2}]}
			5. 对象(在华括号中){"address":{"provice":"陕西..."}}
			6. null
					

2. 数据由逗号分隔:多个键值对由逗号分隔

3. 花括号保存对象:使用{}定义JSON格式
4. 
5. 方括号保存数组:[]
 //1. 定义基本格式
   var person = {"name":"张三","age":"23","gender":"true"}
   //alert(person);

   //2.嵌套格式{}->[]
   var person = {"person":[
           {"name":"张三","age":"23","gender":"true"},
           {"name":"李四","age":"24","gender":"true"},
           {"name":"王五","age":"21","gender":"false"}]}

   //alert(persons);


    //2.嵌套格式 [] --> {}
    var ps = [
        {"name":"张三","age":"23","gender":"true"},
        {"name":"李四","age":"24","gender":"true"},
        {"name":"王五","age":"21","gender":"false"}]
    //alert(ps);

获取数据

1. JSON对象: 对象.键名
2. JSON对象["键名"]
3. 数组对象[索引]

代码

   //1. 定义基本格式
   var person = {"name":"张三","age":"23","gender":"true"}
   //alert(person);

   //获取name值
   // var name = person.name;
   var name = person["name"];
   console.log(name)



   //2.嵌套格式{}->[]
   var persons = {"person":[
           {"name":"张三","age":"23","gender":"true"},
           {"name":"李四","age":"24","gender":"true"},
           {"name":"王五","age":"21","gender":"false"}]}

   //alert(persons);
    //获取王五值
   var name2 = persons.person[2].name;
   console.log(name2);




    //2.嵌套格式 [] --> {}
    var ps = [
        {"name":"张三","age":"23","gender":"true"},
        {"name":"李四","age":"24","gender":"true"},
        {"name":"王五","age":"21","gender":"false"}]
    //alert(ps);
   //获取李四值
    console.log(ps[1].name)

    //获取ps[1]对象中所有的键和值
    //for in 循环
    for (let key in ps[1]){

        console.log(key+":"+ps[1][key]);
        //这样的方式不行,相当于person."name"
        console.log(key+":"+ps[1].key);
    }


    //获取ps的数组i
   for (let i = 0; i <= ps.length; i++) {
       let p = ps[i];
       for (let key in p){
           console.log(key+"="+p[key]);
       }
   }

取数据结果

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值