在线学ajax,ajax学习

封装原生js ajax函数

function ajax(type,url,data,callback){

var xhr = XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP")

if(typeof data == "object"){

var str = ""

for(var key in data){

str += `${key}=${data[key]}&`

}

data = str.slice(0,str.length - 1)

}

type = type.toUpperCase()

if(type == "GET"){

if(data){

xhr.open("GET",`${url}?${data}`,true)

}else{

xhr.open("GET",url,true)

}

xhr.send()

}else if(type == "POST"){

xhr.open('POST',url,true)

if(data){

xhr.send(data)

}else{

xhr.send()

}

}else{

return "error"

}

xhr.onreadystatechange = function(){

if(xhr.readyState == 4){

var res = xhr.responseText

callback?callback(

function(){

return res

}()):""

}

}

}

调用代码

ajax("get","./test.txt",null,function(response){

console.log("dosomething....")

var res = response

console.log(res)

});

输出结果

68f724bad5a33d9a9f6bd2ca7369ecb7.png

标签:function,type,学习,xhr,ajax,res,var,data

来源: https://www.cnblogs.com/gehaoyu/p/11869192.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值