亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > AJAX > 正文

如何避免變量沖突以及相關處理

2024-09-01 08:30:14
字體:
來源:轉載
供稿:網友

AJAX開發,小編有自己的一些心得體會,也請AJAXer多多指教~那接下來先附上這篇如何避免變量沖突以及相關處理,一起來了解下其中的詳情吧。

創建XMLHttpRequest對象的代碼如下:?
var?xmlHttp;?
function?createXMLHttpRequest()?{????if?(window.ActiveXObject)?{????????xmlHttp?=?new?ActiveXObject("Microsoft.XMLHTTP");????}?????else?if?(window.XMLHttpRequest)?{????????xmlHttp?=?new?XMLHttpRequest();????}}?
在一般情況下,該代碼的使用不會帶來任何問題。
如:
function?test1(){?createXMLHttpRequest();?xmlHttp.onreadystatechange?=?handleStateChange1;?url?=?"test.php?ts="?+?new?Date().getTime();?xmlHttp.open("GET",?url,?true);?xmlHttp.send(null);}
function?test2(){?createXMLHttpRequest();?xmlHttp.onreadystatechange?=?handleStateChange2;?url?=?"test.php?ts="?+?new?Date().getTime();?xmlHttp.open("GET",?url,?true);?xmlHttp.send(null);}

function?handleStateChange1()?{????......
}


function?handleStateChange2()?{????......
}
..........

在頁面的不同地方調用test1,test2函數都能正常工作。即不同時刻調用的話,就不會產生問題。

但是假如你需要在同一時刻同時調用這兩個函數,則會發現只有其中一個可以正常運行。
比如,我在加載頁面的時候運行如下函數:

function?init(){?test1();?test2();}

此時,則test1,test2只有一個函數會正常執行。

分析下原因,是由于javascript的語言特性導致。一般情況下,Javascript的變量,函數等等,都是公用的,其他對象都能訪問(可讀可寫)。這就是問題的所在。在同一時刻,調用test1和test2就會出現“變量xmlHttp”的沖突。

解決方法:

1??最簡單的方法,不要在同一時刻調用,如init函數可以改為:

function?init(){?test1();?setTimeout("test2()",500);}

???但該方法屬于投機,并未真正解決問題。

2??修改“XMLHttpRequest創建函數”,改為一實例化函數。

function?createXMLHttpRequest()?{????if?(window.ActiveXObject)?{????????var?xmlHttpObj?=?new?ActiveXObject("Microsoft.XMLHTTP");????}?????else?if?(window.XMLHttpRequest)?{????????var?xmlHttpObj?=?new?XMLHttpRequest();????}?return?xmlHttpObj;}

實例化時相應的改為:

function?test1(){?xmlHttp_1?=?createXMLHttpRequest();?
?xmlHttp_1.onreadystatechange?=?handleStateChange1;?url_1?=?"test.php?ts="?+?new?Date().getTime();?xmlHttp_1.open("GET",?url,?true);?xmlHttp_1.send(null);}



function?test2(){?xmlHttp_2?=?createXMLHttpRequest();?
?xmlHttp_2.onreadystatechange?=?handleStateChange1;?url_2?=?"test.php?ts="?+?new?Date().getTime();?xmlHttp_2.open("GET",?url,?true);?xmlHttp_2.send(null);}

這樣子處理的話,即使在同一時刻調用test1,test2函數,也不會產生問題了,實現了真正的“同步”。?

#######################################################
通過該方法,可以引申出javascript中對象的“私有屬性”的創建方法:
1?私有屬性可以在構造函數中使用?var?關鍵字定義。
2?私有屬性只能由特權函數公用訪問。(特權函數就是在構造函數中使用this關鍵字定義的函數)。外部客戶可以訪問特權函數,而且特權函數可以訪問對象的私有屬性。

比如下面這個Vehicle類,則wheelCount和curbWeightInPounds就是私有屬性,只能通過特權函數訪問/設置了:
function?Vehicle()?{????var?wheelCount?=?4;????var?curbWeightInPounds?=?4000;
????this.getWheelCount?=?function()?{????????return?wheelCount;????}
????this.setWheelCount?=?function(count)?{????????wheelCount?=?count;????}
????this.getCurbWeightInPounds?=?function()?{????????return?curbWeightInPounds;????}
????this.setCurbWeightInPounds?=?function(weight)?{????????curbWeightInPounds?=?weight;????}
?}

以上就是如何避免變量沖突以及相關處理的全部內容,更多關于AJAX的相關教程,請繼續關注我們錯新技術頻道,我們在不斷更新中 . . .?

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩精品极品在线观看播放免费视频| 国模精品系列视频| 日韩欧美国产视频| 日本成人在线视频网址| 亚洲精品美女在线| 亚洲精品国产欧美| 色妞色视频一区二区三区四区| 亚洲综合大片69999| 57pao成人永久免费视频| 久久精品中文字幕免费mv| 欧美激情xxxxx| 不卡中文字幕av| 成人中心免费视频| 国产精品久久久久久久久男| 精品亚洲国产成av人片传媒| 国产精品你懂得| 欧美怡红院视频一区二区三区| 欧美人与性动交| xvideos亚洲人网站| 欧美激情亚洲综合一区| 国产在线高清精品| 国产成人综合亚洲| 日韩天堂在线视频| 中文字幕av一区| 亚洲第一页自拍| 深夜福利日韩在线看| 91影视免费在线观看| 97精品国产97久久久久久春色| 亚洲乱码av中文一区二区| 欧美综合第一页| 国产精品中文久久久久久久| 日韩少妇与小伙激情| 欧美亚洲国产日韩2020| 正在播放亚洲1区| 久久久久久国产免费| 欧美午夜激情在线| 97碰碰碰免费色视频| 亚洲18私人小影院| 欧美福利视频网站| 美女啪啪无遮挡免费久久网站| 18性欧美xxxⅹ性满足| 91国产精品91| 色妞在线综合亚洲欧美| 中文字幕久久久av一区| 亚洲无亚洲人成网站77777| 欧美成人黑人xx视频免费观看| 精品国产一区二区三区久久狼5月| 欧美性视频精品| 国内精品久久久久久久久| 国产精品自拍视频| 亚洲美女中文字幕| 国产精品中文字幕久久久| 国产69久久精品成人看| 欧美理论电影在线播放| 奇米4444一区二区三区| 欧美黄色成人网| 色午夜这里只有精品| 在线激情影院一区| 日韩在线播放av| 日韩亚洲第一页| 欧美激情日韩图片| 91网在线免费观看| 91精品国产成人www| 搡老女人一区二区三区视频tv| 欧美色视频日本版| 视频一区视频二区国产精品| 91成人在线观看国产| 久久99精品视频一区97| 少妇久久久久久| 国产+成+人+亚洲欧洲| 亚洲视频在线看| 68精品久久久久久欧美| 欧美日韩在线另类| 国语对白做受69| 亚洲影视中文字幕| 7m精品福利视频导航| 亚洲毛片在线免费观看| 96精品视频在线| 成人精品视频在线| 欧美日韩亚洲一区二区| 91精品国产91久久久久久吃药| 亚洲丝袜av一区| 国产欧美日韩免费| 国产精品久久久91| 国产xxx69麻豆国语对白| 日韩成人在线视频| 欧美一区二粉嫩精品国产一线天| 26uuu另类亚洲欧美日本老年| 国产精品天天狠天天看| 搡老女人一区二区三区视频tv| 久久人人爽人人爽人人片av高请| 久久精品国产久精国产一老狼| 久久精品电影一区二区| 日韩性生活视频| 日韩精品中文字幕在线播放| 欧美在线国产精品| 亚洲国产女人aaa毛片在线| 欧洲美女7788成人免费视频| 美日韩在线视频| 国产丝袜一区二区| 日韩视频永久免费观看| 97久久精品在线| 国产视频观看一区| 欧美国产日韩中文字幕在线| 高清一区二区三区四区五区| 情事1991在线| 日韩av在线免费看| 亚洲一区国产精品| 国产精品高潮在线| 久久久久久亚洲精品不卡| 国产欧美一区二区| 日韩中文字幕国产精品| 亚洲а∨天堂久久精品喷水| 精品高清一区二区三区| 亚洲第一色在线| 欧美亚洲午夜视频在线观看| 国内精品久久久久影院优| 91精品久久久久久久久久久| 欧美性猛交xxxxx免费看| 97在线视频一区| 亚洲激情视频在线| 欧美黑人视频一区| 91精品国产精品| 国产精品18久久久久久麻辣| 一本一道久久a久久精品逆3p| 成人精品一区二区三区电影免费| 欧美日韩国产91| 国产精品久久综合av爱欲tv| 亚洲黄页视频免费观看| 国产激情久久久久| 综合网日日天干夜夜久久| 亚洲xxxxx| 国产日韩中文字幕在线| 国模吧一区二区| 久久影视电视剧凤归四时歌| 欧美日韩性视频| 91精品国产91久久久久久吃药| 成人春色激情网| 久久国产视频网站| 九九九久久久久久| 国产精品香蕉国产| 国产精品稀缺呦系列在线| 91香蕉国产在线观看| 国产精品极品在线| 国产精品免费一区| 日韩电影免费在线观看中文字幕| 亚洲天堂免费在线| 亚洲a在线播放| 亚洲欧美精品一区二区| 一区二区三区回区在观看免费视频| 欧美国产精品va在线观看| 亚洲精品黄网在线观看| 亚洲aaa激情| 亚洲v日韩v综合v精品v| 亚洲一区二区中文| 国产综合香蕉五月婷在线| 成人精品久久av网站| 精品性高朝久久久久久久| 亚洲欧美中文日韩在线v日本| www.美女亚洲精品| 久久99精品久久久久久噜噜| 欧美日韩一区二区免费视频| 91禁外国网站| 国产精品久久久久久久久男|