JSON语法格式

Posted carrie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON语法格式相关的知识,希望对你有一定的参考价值。

一、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语法格式的主要内容,如果未能解决你的问题,请参考以下文章

JSON语法格式

JSON格式学习练习

JSON&Ajax(语法格式+解析json)

C# 解析JSON格式数据

C# JSON格式数据用法

HBuilder X 提示Setting.json格式语法错误