手记

JSON

一 JSON的简介

  1 .JSON是一种轻量级的数据交换格式

  2. JSON通常用于服务器端向网页传递数据

  3 JSON 是存储和交换文本信息的语法。类似 XML;

  4 JSON是在AJAX中代替XML交换数据的更佳方案。

二 JSON语法规则

    数据使用键值对的方式;

    数据由逗号分割;

    大括号保存对象;

    方括号保存数组

 

 JSON 值可以是:

 


    1. 数字(整数或浮点数)

    2. 字符串(在双引号中)

    3. 逻辑值(true 或 false)

    4. 数组(在方括号中)

    5. 对象(在花括号中)

    6. null

 

<script>      //js中的对象表示
  var user={
    name:'张三',
    age:'30'
  }   //josn对象表示
   
   //json本质上是字符串

   //普通数组 
    var arr=["aaa",100,true]  //json数组
    ["aaa",100,true] //少了变量赋值

  //数组对象组合嵌套使用  [{    "name":"aaa",    "age":30
  },{    "name":"bbb",    "age":25
  },{    "name":"ccc",    "age":18
  }]</script>

三:JSON 的解析和序列化

      一般情况下,我们的json数据都是从服务端获取到的,获取的json数据是以字符串的形式返回的。这个字符串虽然是json格式的,但是不能被直接使用,我们必须将该字符串转化为一个对象才能正常解析它

  JavaScript 函数 eval() 可用于将 JSON 文本转换为 JavaScript 对象,但是存在安全问题(如果JSON中包含恶意代码也会被直接执行)

      使用 JSON 解析器将 JSON 转换为 JavaScript 对象是更安全的做法。JSON解析器只会识别JSON文本,而不会执行

      JSON 的解析:json数据转换成js对象

    语法:var myObject = JSON.parse(myJSONtext, reviver);

 JSON的序列化:js对象转换成json数据(字符串)
         var myJSONText = JSON.stringify(myObject, replacer);

  <script>  //实际使用的时候json数据需要从服务器加载,这里假定下面的数据是从服务器加载过来的,来演示后续的操作。
  var jsonstr='[{"name":"aaa","age":30},{"name":"bbb","age":25},{"name":"ccc","age":18}]';  //alert(typeof(jsonstr))
 //json数据转换成js对象
    //var jsonobj=JSON.parse(jsonstr);
    //alert(jsonstr)
   // alert(jsonobj[0].name)
    //alert(typeof(jsonobj))

    var jsonobj=JSON.parse(jsonstr,function(key,value){        if ((key=='name')) {
          alert('VIP会员:'+value) ;
        }else
        {
           alert(value)
        }
    });  </script>

原文出处:https://www.cnblogs.com/qianqian-it/p/9579037.html

1人推荐
随时随地看视频
慕课网APP