ajax原生用法,簡略版本

2021-07-27 15:57:21 字數 1525 閱讀 6555



1.建立xmlhttprequest物件

2.get請求

js**

function

get()else

}  }  req.send(null

);  

}  }  

3.post請求

js**

function

post()else

}  }  }  

}  

post請求需要設定請求頭

4.    readystate與status:

readystate有五種狀態:

0 (未初始化): (xmlhttprequest)物件已經建立,但還沒有呼叫open()方法;

1 (載入):已經呼叫open() 方法,但尚未傳送請求;

2 (載入完成): 請求已經傳送完成;

3 (互動):可以接收到部分響應資料;

4 (完成):已經接收到了全部資料,並且連線已經關閉。

如此一來,你應該就能明白readystate的功能,而status實際是一種輔狀態判斷,只是status更多是伺服器方的狀態判斷。關於status,由於它的狀態有幾十種,我只列出平時常用的幾種:

100——客戶必須繼續發出請求

101——客戶要求伺服器根據請求轉換http協議版本

200——成功

201——提示知道新檔案的url

300——請求的資源可在多處得到

301——刪除請求資料

404——沒有發現檔案、查詢或url

500——伺服器產生內部錯誤

其實就是利用各瀏覽器對轉義字元"\v"的理解

在ie瀏覽器中,"\v"沒有轉義,得到的結果為"v"

而在其他瀏覽器中"\v"表示乙個垂直製表符(一定程度上相當於空格)

所以ie解析的"\v1" 為 "v1"

而其他瀏覽器解析到 "\v1" 為 "1"

在前面加上乙個"+"是為了把後面的字串轉變成數字

由於ie認為"\v1"為"v1",所以前面的加上加號無法轉變成數字,為nan

其他瀏覽器均能變成 1

再因為js與c語言類似,進行邏輯判斷時可使用數字,並且 0 為 false,其他數字則為true

所以 !1 = false ,於是其他瀏覽器均返回false

js在遇到如下幾個值會返回false:undefined、null、nan,所以ie中 !nan = true

\v1能識別出所有的ie嗎,或者說ie都有這個bug嗎?有待補充

原生ajax解析 封裝原生ajax函式

前沿 對於此篇隨筆,完是簡要寫了幾個重要的地方,具體實現細節完在提供的原始碼做了筆記 一 ajax基本要點介紹 更好的介紹ajax 1.ajax物件中new xmlhttprequest 屬性和方法列表 2.常用事件介紹 事件觸發時機 onreadystatechange 當readystate的值...

CSCOPE用法簡略筆記

bin sh find name h o name c o name cc cscope.files cscope bkq i cscope.files my usage cscope q d i cscope.files f cscope.out d do not update the datab...

原生ajax 書寫

1.建立xmlhttprequest物件 post請求需要設定請求頭readystate與status readystate有五種狀態 0 未初始化 xmlhttprequest 物件已經建立,但還沒有呼叫open 方法 1 載入 已經呼叫open 方法,但尚未傳送請求 2 載入完成 請求已經傳送完...