JSON进修笔记(一)

先进修阮大神的 数据范例和Json花样

一、
js中剖析JSON的体式格局

  • eval()

  • JSON.parse

var jsondata = '{"staff":[{"name":"小红","age":16},{"name":"小明","age":20},{"name":"小芳","age":18}]}'
var jsonobj = eval('(' + jsondata + ')')
alert( jsonobj.staff[0].name);

《JSON进修笔记(一)》

var jsondata = '{"staff":[{"name":"小红","age":16},{"name":"小明","age":20},{"name":"小芳","age":18}]}'
var jsonobj = JSON.parse(jsondata);
alert( jsonobj.staff[0].name);

《JSON进修笔记(一)》

两种结果现实上是一样的,然则我们用第二种,由于eval()不只剖析JSON字符串还会实行字符串中的js要领
ps:现实中只管不要用eval()
二、
在线JSON校验东西 http://jsonlint.com/
三、
{

"success":true,
"msg":"xxx",
"data":"xxx"

}
success:逻辑是不是胜利的标记(如:ajax请求过程当中,请求是不是胜利的标记),msg:”xxx”(如:msg作为请求返回值),errormsg:success为false时的毛病信息,data:请求返回的数据。
四、demo.html中剖析json,并将相干信息显现在页面上。

            if(request.status===200){
                var data=JSON.parse(request.responseText);
                if(data.success){
                    document.getElementById('searchResult').innerHTML=data.msg;
                }else{
                    document.getElementById('searchResult').innerHTML="涌现毛病:"+data.msg;
                }
            }else{
                alert('发作毛病'+request.status);
            }

PHP中
JSON 数据花样和 Serialize 数据花样的异同和运用
相同点:

    1、都是把其他数据范例转换成一个能够传输的字符串(除了资源范例)
    2、都是结构性数据

异同点:

    1、Serialize 序列化后的数据花样保存数据原有范例
    2、JSON 数据花样要简约,比拟Serialize 序列化以后的数据花样

运用场景:

    1、JSON 合适数据量大,不请求保存原有范例的状况
    2、Serialize 合适存储带有加密体式格局的数据串,防备数据被半途截取,反序列化破解
    
    

参考

Ajax全接触

    原文作者:AlexZ33
    原文地址: https://segmentfault.com/a/1190000009125073
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞