(function (){
function myAjax(obj){
// 处理参数
if(obj.type.toLowerCase() == "get"){
var arr = [];//"name=hdz","age=18"
for (var pro in obj.data) {
var str = pro + '=' + obj.data[pro]
arr.push(str)
}
var canshuStr = arr.join('&');//"name=hdz&age=18"
// 拼接url
obj.url += obj.url.indexOf('?') == -1 ? '?' + canshuStr : '&' + canshuStr
}else if(obj.type.toLowerCase() == "post"){
var f = new FormData();
for (var pro in obj.data) {
f.append(pro,obj.data[pro])
console.log(f.get(pro))
}
}else{
alert("请求类型错误!")
}
// 2
var xhr = new XMLHttpRequest()
xhr.onreadystatechange = function(){
if(xhr.readyState == 4 && xhr.status == 200){
obj.success(xhr.responseText)
}
}
// 3 预定url地址
xhr.open(obj.type,obj.url,true)
// 4.发送请求
if(obj.type.toLowerCase() == "get"){
xhr.send(null)
}else if(obj.type.toLowerCase() == "post"){
xhr.send(f)
}else{
alert("请求类型错误!")
}
}
window.myAjax = myAjax;
})()
声明一个立即执行函数,函数内判断请求类型是"get",还是"post",来进行不同的url拼接