实习第三天(AJAX、JSON)

一、AJAX初识

ajax 的全称是Asynchronous JavaScript and XML,其中,Asynchronous 是异步的意思,它有别于传统web开发中采用的同步的方式。

AJAX应用的五个步骤

1.建立xmlHttpRequest对象

    if(window.XMLHttpRequest) {

    xmlHttp = new XMLHttpRequest();

    if(xmlHttp.overrideMimeType) {

    xmlHttp.overrideMimeType("text/xml");

    }

  } else if(window.ActiveXobject) {

    var activeName = ["MSXML2.XMLHTTP", "Microsoft.XMLHTTP"];

    for(var i = 0; i < activeName.length; i++) {

    try {

      xmlHttp = new ActiveXobject(activeName[i]);

      break;

    } catch(e) {}

    }

  }

  if(!xmlHttp) {

    alert("创建xmlhttprequest对象失败");

  } else {}

2.设置回调函数

  xmlHttp.onreadystatechange= callback;

  function callback(){}

3.使用OPEN方法与服务器建立连接  xmlHttp.open("get","ajax?name="+ name,true)

  此步注意设置http的请求方式(post/get),如果是POST方式,注意设置请求头信息xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded")

4.向服务器端发送数据

  xmlHttp.send(null);

  如果是POST方式就不为空

5.在回调函数中针对不同的响应状态进行处理

  if(xmlHttp.readyState == 4){      //判断交互是否成功

      if(xmlHttp.status == 200){        //获取服务器返回的数据        //获取纯文本数据

        var responseText =xmlHttp.responseText;

      document.getElementById("info").innerHTML = responseText;

      }

  }

二、JSON初识

1. 什么是JSON

JSON---Javascript Object Notation,前两个单词大家应该都认识,最后一个notation,是“记号、标记法”的意思,连在一起,便成了JSON。

它是一种轻量级的数据交换格式,是基于Javascript的一个子集,可以叫做Javascript对象表示法,是存储和交换文本信息的语法,但它并不是Javascript独有的数据格式,其它很多语言都可以对JSON进行解析和序列化。

2. JSON的由来

在21世纪初,Douglas Crockford(Web开发领域最知名的技术权威之一,ECMA JavaScript2.0标准化委员会委员,被JavaScript之父Brendan Eich称为JavaScript的大宗师(Yoda),曾任Yahoo!资深JavaScript架构师,现任PayPal高级JavaScript架构师)试图寻找一种更加简便的数据交换格式,能够在服务器之间交换数据,当时通用的数据交换语言是XML,但是Douglas Crockford认为XML的生成与解析都过于麻烦,所以他提出了一种更加简化的格式,就是我们现在使用的JSON。

JSON的规格十分简单,只用一个页面几百个字就能说清楚,而且Douglas Crackford称这个规格永远不用升级,因为该规定的都已经规定好了。

3. 为什么要用JSON

JSON类似于XML,比XML更小、更快、更容易解析。但同时XML也有它的不可替代性,应根据使用场景进行更合适的选择;

JSON语法简单,很容易理解,并且对象信息自描述,数据传输量小不占用带宽;

JSON虽然远不及emoji这一世界通用语言,但其实它的支持度也已经非常可观,支持的语言包括C,C#,Java,JavaScript,PHP,Python,Ruby等等;

对于Ajax应用程序来说,JSON比XML更快捷,更易用;

JSON的可读性、可扩展性都非常好,编码难度也比较低,即使不借助工具也能写出比较规范的JSON

......

4. JSON怎么用

⑴ JSON的基本语法

① 并列的数据之间用逗号( , )分隔

② 映射用冒号( : )表示

③ 映射的集合用大括号( {} )表示

④ 并列数据的集合用方括号( [] )表示

复杂的数据也可以使用JSON来进行表示,比如下面这段信息:最喜欢的编辑器是sublime,最喜欢的运动是篮球,最喜欢的球队是马刺队,马刺队控卫有托尼帕克、帕蒂米尔斯,分卫有马努吉诺比利、丹尼格林,小前锋有科怀伦纳德、凯尔安德森,大前锋有拉马库斯阿尔德里奇、大卫李,中锋有德维恩戴德蒙、保罗加索尔。

{

        "favoriteEditor": "sublime",

        "favoriteSport": "basketball",

        "favoriteTeam":{

            "Spurs":[

                {

                    "PG":"Tony Parker",

                    "SG":"Danny Green",

                    "SF":"Kawhi Leonard",

                    "PF":"LaMarcus Aldridge",

                    "C":"Pau Gasol"   

                },

                {

                    "PG":"Patty Mills",

                    "SG":"Manu Ginobili",

                    "SF":"Kyle Anderson",

                    "PF":"David Lee",

                    "C":"Dewayne Dedmon"   

                }

            ]

        }

    }

你可能感兴趣的:(实习第三天(AJAX、JSON))