我們在用ajax請求數據時,可能會遇到一次點擊多次觸發的可能。
(比如說:ajax 的 onreadystatechange 事件就會觸發多次;這是因為 onreadystatechange 是一個事件句柄。
它的值 (state_Change) 是一個函數的名稱,當 XMLHttpRequest 對象的狀態發生改變時,會觸發此函數。
狀態從 0 (uninitialized) 到 4 (complete) 進行變化。僅在狀態為 4 時,我們才執行代碼。”
每次XMLHttpRequest 對象的狀態發生改變時,會觸發此函數。
一共會觸發 4 次,從 0 到 4。)【PS:當然這裡引用的例子不完全符合工作時遇到的問題】此時,我們需要一個可以來終止程序的方法。
exit 和abort 都是用來終止程序的函數,下面我們來講一下這兩者的不同之處。
exit會做一些釋放工作:釋放所有的靜態的全局的對象,緩存,關掉所有的I/O通道,然後終止程序。如果有函數通過atexit來注冊,還會調用注冊的函數。不過,如果atexit函數扔出異常的話,就會直接調用terminate。
abort:立刻terminate程序,沒有任何清理工作。
以上就是小編為大家帶來的關於ajax的多次請求問題全部內容了,希望大家多多支持~