码迷,mamicode.com
首页 > Web开发 > 详细

JSON语法格式

时间:2018-11-21 12:24:47      阅读:293      评论:0      收藏:0      [点我收藏+]

标签:data   uncaught   imp   对象   bsp   执行   ide   span   com   

一、JSON数据格式

       名称/值对

二、JSON值对数据类型

       数字    字符串   逻辑值    数组(在方括号中)     对象 (在花括号中)     null

     eg:

    {

     "staff":[

         {"name":"小明","age":"18"},

        {"name":"小红","age":"15"},

       {"name":"小黄","age":"20"}

       ]

  }

三、JSON解析

      eval和Json.parse

        eval在代码中使用很危险,特别是用它执行第三方的Json数据(其中可能包含恶意代码)时,尽可能使用JSON.parse()方法解析字符串本身,该方法可以捕获JSON中的语法错误

     eg1:

       (1)  var jsondata=‘{"staff":[{"name":"小明","age":"18"},{"name":"小红","age":"15"},{"name":"小黄","age":"20"}]}‘;
              var jsonbj=eval(‘(‘+jsondata+‘)‘);
              alert(jsonbj.staff[0].name)

      (2)   var jsondata=‘{"staff":[{"name":"小明","age":"18"},{"name":"小红","age":"15"},{"name":"小黄","age":"20"}]}‘;
              var jsonbj=JSON.parse(jsondata);
              alert(jsonbj.staff[0].name)

    eg2:

       (1)  var jsondata=‘{"staff":[{"name":"小明","age":alert(123)},{"name":"小红","age":"15"},{"name":"小黄","age":"20"}]}‘;
              var jsonbj=eval(‘(‘+jsondata+‘)‘);
              alert(jsonbj.staff[0].name)

             会先弹出123,再弹出小明

       (2)   var jsondata=‘{"staff":[{"name":"小明","age":"18"},{"name":"小红","age":"15"},{"name":"小黄","age":"20"}]}‘;
              var jsonbj=JSON.parse(jsondata);
              alert(jsonbj.staff[0].name)

              会报错Uncaught SyntaxError: Unexpected identifier

四、JSON校验工具(https://jsoncompare.com/#!/simple/)

 

JSON语法格式

标签:data   uncaught   imp   对象   bsp   执行   ide   span   com   

原文地址:https://www.cnblogs.com/lixintao/p/9993852.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!