代码改变世界

JSON语法校验解析

2017-01-22 16:42  whitecf  阅读(2283)  评论(0编辑  收藏  举报
  • JSON语法

JSON的格式是键值对     ("键":值)
键 要用双引号括起来
值 由以下类型
  数字(12,1.2)               例:"price":1.12
      字符串(在双引号中)         例:"name":"小红"
      逻辑值(true,false)        例:"flag":true
      数组(在方括号中)            例:"arr":[1,2,3]
      对象(在花括号中)            例:"student":{"name":"小刚","age":20,"flag":true}
      null

综合例
{
    "staff": [    
                 {"name": "小明","age": 18,"flag": true},
                 {"name": "小红","age": 21,"flag": false},
                 {"name": "小刚","age": 20,"flag": true}
           ]
}

JSON语法校验工具:www.jsonlint.com

 

  • JSON解析(js)
  1. 方法1(无json检验,不用)

    var jsondata='{"staff":[{"name":"小明","age":18,"flag":true},{"name":"小红","age":21,"flag":false},{"name":"小刚","age":20,"flag":true}]}';

    var jsonobj=eval('('+jsondata+')');

    alert(jsonobj.staff[1].flag);

  2. 方法2(安全)

    var jsondata='{"staff":[{"name":"小明","age":18,"flag":true},{"name":"小红","age":21,"flag":false},{"name":"小刚","age":20,"flag":true}]}';

    var jsonobj=JSON.parse(jsondata);

    alert(jsonobj.staff[0].name);


更好的解释网站http://www.runoob.com/json/json-syntax.html