本文实例为大家分享了js编写ajax方法库的具体代码,供大家参考,具体内容如下

具体代码
~function(){
//ajax:实现ajax请求的公共方法;当一个方法传递的参数过多,而且还不固定,我们使用对象统一传值法(把需要传递的参数值都放在一个对象中,一起传递进去即可)
function ajax(options){
//把需要使用的参数值设定一个规则和初始值
var _default = {
url:"",//请求的地址
type:"get",//请求的方式
dataType:"json",//设置请求回来的内容格式
async:true,//请求是同步还是异步
data:null,//放在请求主体中的内容(POST)
getHead:null,//当READY STATE===2的时候执行的回调方法
success:null//当READY STATE===4的时候执行的回调方法
};
//使用用户自己传递进来的值覆盖我们的默认值
for(var key in options){
if(options.hasOwnProperty(key)){
_default[key] = options[key];
}
}
//如果当前的请求方式是get,我们需要在URL的末尾加随机数清楚缓存
if(_default.type==="get"){
_default.url.indexOf("?") >=0 ? _default.url += "&" : _default.url += "?";
_default.url +="_="+Math.random();
}
//SEND AJAX
var xhr = createXHR();
xhr.open(_default.type,_default.url,_default.async);
xhr.onreadystatechange = function(){
if(/^2\d{2}/.test(xhr.status)){
//想要在READY STATE等于2的时候做一些操作,需要保证AJAX是异步请求
if(xhr.readyState === 2){
if(typeof _default.getHead === "function"){
_default.getHead.call(xhr);
}
}
if(xhr.readyState === 4){
var val = xhr.responseText;
//如果传递的参数值是json,说明获取的内容应该是json格式的对象
if(_default.dataType === "json"){
val = "JSON" in window ? JSON.parse(val) : eval("("+val+")");
}
_default.success && _default.success.call(xhr,val)
}
}
}
xhr.send(_default.data);
}
window.ajax = ajax;
}()
ajax({
url:"data.txt",
type:"get",
dataType:"json",
async:false,
getHead:function(){
//this xhr当前AJAX对象
},
success:function(data){
//this xhr当前AJAX对象
//data:我们从服务器获取的主体内容
}
})
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# js
# ajax
# Struts2.5 利用Ajax将json数据传值到JSP的实例
# JavaScript 通过Ajax 动态加载CheckBox复选框
# 浅谈Vue.js应用的四种AJAX请求数据模式
# 基于jstree使用AJAX请求获取数据形成树
# JavaScript使用Ajax上传文件的示例代码
# vuejs使用FormData实现ajax上传图片文件
# JS+Ajax实现百度智能搜索框
# 原生js中ajax访问的实例详解
# 放在
# 法库
# 回调
# 随机数
# 还不
# 大家分享
# 具体内容
# 大家多多
# 默认值
# 象中
# 应该是
# 一传
# url
# type
# _default
# options
# var
# dataType
# data
# null
相关文章:
c++怎么用jemalloc c++替换默认内存分配器【性能】
佛山企业网站制作公司有哪些,沟通100网上服务官网?
如何快速搭建高效香港服务器网站?
香港服务器部署网站为何提示未备案?
如何在阿里云通过域名搭建网站?
网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?
青岛网站建设如何选择本地服务器?
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
如何基于PHP生成高效IDC网络公司建站源码?
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
免费ppt制作网站,有没有值得推荐的免费PPT网站?
如何快速查询网站的真实建站时间?
平台云上自助建站如何快速打造专业网站?
建站之星后台密码遗忘如何找回?
建站主机选哪家性价比最高?
建站之星3.0如何解决常见操作问题?
如何破解联通资金短缺导致的基站建设难题?
公司网站制作价格怎么算,公司办个官网需要多少钱?
如何快速上传自定义模板至建站之星?
广德云建站网站建设方案与建站流程优化指南
建站VPS推荐:2025年高性能服务器配置指南
婚礼视频制作网站,学习*后期制作的网站有哪些?
如何在IIS服务器上快速部署高效网站?
外贸公司网站制作哪家好,maersk船公司官网?
建站之星如何取消后台验证码生成?
建站主机系统SEO优化与智能配置核心关键词操作指南
建站三合一如何选?哪家性价比更高?
相册网站制作软件,图片上的网址怎么复制?
深圳网站制作的公司有哪些,dido官方网站?
南京做网站制作公司,南京哈发网络有限公司,公司怎么样,做网页美工DIV+CSS待遇怎么样?
如何在橙子建站上传落地页?操作指南详解
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
如何快速启动建站代理加盟业务?
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
建站主机SSH密钥生成步骤及常见问题解答?
购物网站制作公司有哪些,哪个购物网站比较好?
如何在香港服务器上快速搭建免备案网站?
如何在阿里云域名上完成建站全流程?
网站制作多少钱一个,建一个论坛网站大约需要多少钱?
常州自助建站:操作简便模板丰富,企业个人快速搭建网站
制作网站的模板软件,网站怎么建设?
巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成
如何规划企业建站流程的关键步骤?
,柠檬视频怎样兑换vip?
北京网站制作的公司有哪些,北京白云观官方网站?
建站org新手必看:2024最新搭建流程与模板选择技巧
香港服务器网站推广:SEO优化与外贸独立站搭建策略
MySQL查询结果复制到新表的方法(更新、插入)
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
*请认真填写需求信息,我们会在24小时内与您取得联系。