中文字幕第五页-中文字幕第页-中文字幕韩国-中文字幕最新-国产尤物二区三区在线观看-国产尤物福利视频一区二区

原生js怎么實現對Ajax的封裝

這篇文章主要介紹原生js怎么實現對Ajax的封裝,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

成都創新互聯公司技術團隊十載來致力于為客戶提供網站設計、網站建設、高端網站設計成都營銷網站建設、搜索引擎SEO優化等服務。經過多年發展,公司擁有經驗豐富的技術團隊,先后服務、推廣了1000+網站,包括各類中小企業、企事單位、高校等機構單位。

前言

眾所周知,jquery在我們日常開發中的使用頻率非常高,與js相比,我們省去了冗長的獲取元素的代碼,不用考慮一些麻煩的兼容問題,更加方便的動畫實現,以及更加方便的方法調用讓我們覺得jquery真是越用越舒服。但是jquery說到底還是對js的封裝,我們不光要用的舒服還要深入理解其中的原理,這樣才能更好的使用它。

首先我們封裝的函數為了能實現可傳入無限多個參數,在使用我們即將封裝的函數時,需要使用對象進行傳參,形式如下:

//data作為參數傳入我們下面封裝的函數
var data = {
       //數據
       user:"yonghu1",
       pass:'12345',
       age:18,
       //回調函數
       success:function (data){
        alert(data);
       }
      }

函數封裝:

1、封裝一個輔助函數,把傳進來的對象拼接成url的字符串

function toData(obj){
  if (obj == null){
    return obj;
  }
  var arr = [];
  for (var i in obj){
    var str = i+"="+obj[i];
    arr.push(str);
  }
  return arr.join("&");
}

2、封裝Ajax

function ajax(obj){
  //指定提交方式的默認值
  obj.type = obj.type || "get";
  //設置是否異步,默認為true(異步)
  obj.async = obj.async || true;
  //設置數據的默認值
  obj.data = obj.data || null;
  if (window.XMLHttpRequest){
    //非ie
    var ajax = new XMLHttpRequest();
  }else{
    //ie
    var ajax = new ActiveXObject("Microsoft.XMLHTTP");
  }
  //區分get和post
  if (obj.type == "post"){
    ajax.open(obj.type,obj.url,obj.async);
    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    var data = toData(obj.data);
    ajax.send(data);
  }else{
    //get test.php?xx=xx&aa=xx
    var url = obj.url+"?"+toData(obj.data);
    ajax.open(obj.type,url,obj.async);
    ajax.send();
  }

  ajax.onreadystatechange = function (){
    if (ajax.readyState == 4){
        if (ajax.status>=200&&ajax.status<300 || ajax.status==304){
          if (obj.success){
            obj.success(ajax.responseText);
          }
        }else{
          if (obj.error){
            obj.error(ajax.status);
          }
        }
      }
   }  
}

以上是“原生js怎么實現對Ajax的封裝”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注創新互聯行業資訊頻道!

網站標題:原生js怎么實現對Ajax的封裝
標題來源:http://m.2m8n56k.cn/article48/gposhp.html

成都網站建設公司_創新互聯,為您提供移動網站建設品牌網站建設云服務器網站維護靜態網站網站排名

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都網站建設
主站蜘蛛池模板: 国产亚洲一区二区手机在线观看 | 99视频在线看观免费 | 国产一区曰韩二区欧美三区 | 996久久国产精品线观看 | 国产亚洲自在精品久久 | 91精品国产高清久久久久久io | 理论片黄色 | 一个人看的www日本高清视频 | 亚洲美女视频在线观看 | 欧美视频一区 | 欧美专区一区 | 日韩毛片免费线上观看 | 亚洲精品视频观看 | 国产一级毛片国语版 | 草草视频免费观看 | 国产成人精品在视频 | 成人a毛片免费视频观看 | 韩日一区二区 | 一级做性色a爰片久久毛片免费 | 成人在线免费观看视频 | 久久精品国产精品青草色艺 | 日韩中文字幕精品 | avtt加勒比手机版天堂网 | 香港三澳门三日本三级 | 国语一级毛片 | 欧美一级淫片a免费播放口aaa | 亚洲 欧美 都市 自拍 在线 | 国产在线精品一区二区中文 | 国内精品久久久久久网站 | 欧美性毛片大片 | 精品三级在线观看 | 久久国产精彩视频 | 真人一级一级特黄高清毛片 | 网站国产| 亚州一级毛片 | 男女晚上爱爱的视频在线观看 | 久久久久网站 | 午夜国产精品久久久久 | 中国老妇色xxxxx | 在线观看日本视频免费 | 日韩视频欧美视频 |