//这里的arguments.length == 0是什么意思 ??
if(arguments.length == 0)
因为首次调用,所有没有参数看callback(objXMLHttp);sendReq: function (method, url, data, callback)XMLHttp.sendReq("POST", url, "", doPageLoad);//这里的doPageLoad是做什么用的 是不是得到数据后再来执行doPageLoad方法,如果得到了那个arguments.length就会>0
XMLHttp.sendReq("POST", url, "", doPageLoad);
用来做回调函数的else
{
//是不是这里Post到数据的话就赋值
var xml = arguments[0].responseXML;
//以下略
}
这里是第二次调用doPageLoad时转入的,
就是在XMLHttp.sendReq("POST", url, "", doPageLoad)这一句里调用的
这时arguments[0] == callback(objXMLHttp)中的objXMLHttp
这样一来arguments[0].responseXML就有数据了,当然可以赋值咯
if(arguments.length == 0)
因为首次调用,所有没有参数看callback(objXMLHttp);sendReq: function (method, url, data, callback)XMLHttp.sendReq("POST", url, "", doPageLoad);//这里的doPageLoad是做什么用的 是不是得到数据后再来执行doPageLoad方法,如果得到了那个arguments.length就会>0
XMLHttp.sendReq("POST", url, "", doPageLoad);
用来做回调函数的else
{
//是不是这里Post到数据的话就赋值
var xml = arguments[0].responseXML;
//以下略
}
这里是第二次调用doPageLoad时转入的,
就是在XMLHttp.sendReq("POST", url, "", doPageLoad)这一句里调用的
这时arguments[0] == callback(objXMLHttp)中的objXMLHttp
这样一来arguments[0].responseXML就有数据了,当然可以赋值咯
这个是指在没有参数的情况下XMLHttp.sendReq("POST", url, "", doPageLoad);
你这个指的是:onreadystatechange = function (){
if (objXMLHttp.readyState == 4 && (objXMLHttp.status == 200 || objXMLHttp.status == 304)){
callback(objXMLHttp);
}
}
执行这里callback(objXMLHttp);也就是doPageLoad(objXMLHttp);这样函数doPageLoad就带有参数了,那么他就会执行
{
//是不是这里Post到数据的话就赋值
var xml = arguments[0].responseXML;
//以下略
}语句
arguments表示方法的参数 // 发送请求(方法[post,get], 地址, 数据, 回调函数)
sendReq: function (method, url, data, callback)
……
callback(objXMLHttp);
……
doPageLoad这个函数是参数中的回调函数
sendReq中有调用这个回调函数
arguments[0]就是传入的objXMLHttp