猿问
如何return responseText的值?
上图说明obj对象取到了responseText的值。
但这样做为什么不能返回值??
慕斯王
浏览 554
回答 2
2回答
杨魅力
ajax是异步,你后面那么做,还没执行回调函数获取responseText,obj是取不到值的。//好像这样表述不对,要取到值,最好是在确认回调执行了才好。另外,你写的return是在一个function里面,return不到外部去的。
0
0
0
慕码人2483693
且不说你的异步就不能这样返回值,你的return返回很明显是xmlhttp.onreadystatechange的值,而不是你的loadXMLDoc函数的值。针对异步的问题你要学会使用回调函数。回调函数给我的感觉就是一个一个函数往里面套,我给你写个例子:function loadXMLDoc(callback) { callback = callback || function() {}; ...... //这里是xmlhttp的一些定义 xmlhttp.onreadystatechange = function() { if(xmlhttp.readyState == 4 && xmlhttp.status == 200) callback(JSON.parse(xmlhttp.responseText)); } ...... //这里是xmlhttp的其它操作}loadXMLDoc(function(res){ document.write(res[1].week);});
0
0
0
随时随地看视频
慕课网APP
相关分类
JavaScript
我要回答