深入理解ajax同步和異步的區(qū)別
標簽:
JavaScript
说明:
同步可以改变外部定义的变量值,异步可以提高加载效率
示例:
a. 说明:
b. 原代码:<script>var a = 0function loadDoc(file,async=true){if(window.XMLHttpRequest){ // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest();}else{ // code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");}if(async === true){ xmlhttp.onreadystatechange = function(){ if(xmlhttp.readyState < 4){ // 加载中 }else if (xmlhttp.readyState == 4 && xmlhttp.status == 200){ // 成功 xmlDoc=xmlhttp.responseText; a = 1 return xmlDoc }else{ // 失败 xmlhttp.abort() return } }}xmlhttp.open("GET",file,async);xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");xmlhttp.send();if(async === false){ xmlDoc=xmlhttp.responseText; a = 1 return xmlDoc}}var ret = loadDoc('http://localhost/test.php',true)console.log(a)var ret = loadDoc('http://localhost/test.php',false)console.log(a)</script>
點擊查看更多內(nèi)容
1人點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優(yōu)質(zhì)文章
正在加載中
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦