IT兄弟連 JavaWeb教程 jQuery對AJAX的支援經典面試題
1.簡述對Ajax的理解
AJAX是Asynchronous JavaScript and Xml非同步的JavaScript和Xml。它一種用來改善使用者體驗的技術其實質是使用XMLHttpRequest物件非同步地向伺服器發請求。伺服器返回部分資料,而不是—個完整的頁面,以頁面無重新整理的效果更改頁面中的區域性內容。
2.什麼是JSON,在什麼情況下使用?
JSON(JavaScript Object Notation)是一種輕量級的資料交換格式。易於人閱讀和編寫,同時也易於機器解析和生成。JSON採用完全獨立於語言的文字格式。
JSON最常見的用法之一,是從web伺服器上讀取JSON資料,將JSON資料轉換為JavaScript物件,然後在網頁中使用該資料。
3.使用Ajax傳送POST請求時,如何傳送引數?
使用Ajax傳送POST請求時,需要使用XMLHttpRequest物件的setRequestHreader方法設定請求頭Content-Type為application/x-www-form-urlencoded,然後使用XMLHttpRequest物件的send方法傳送引數字串。也可使在URL中拼接引數進行傳參,但是不建議使用。
4.使用Ajax傳送GET請求時,如何傳送引數?
使用Ajax傳送GET請求時,只需要在URL中拼接引數即可。
5.說一說如何使用Ajax向服務端傳送非同步請求?
建立Ajax的非同步請求物件XMLHttpRequest,對於不同的瀏覽器有不同的建立方式,對於主流的瀏覽器使用new XMLHttpRequest建立,對於一些老版本的瀏覽器需要使用new ActiveXObject("Microsoft.XMLHttp")來建立物件。
設定與服務端的HTTP連線,使用XMLHttpRequest物件的open方法,需要給open方法傳遞請求方式,請求地址和是否非同步等引數。
為XMLHttpRequest物件繫結回撥函式,當XMLHttpRequest物件的readyState屬性值等於4並且status屬性值等於200時表示請求已經完成併成功獲得了相應,然後編寫相應的業務邏輯。
如果傳送的是POST請求,還需要使用XMLHttpRequest物件的setRequestHeader方法設定請求頭資訊。
如果傳送的是POST請求,需要使用XMLHttpRequest物件的send方法傳遞引數,如果傳送的是GET請求,使用null作為send方法的引數。
6.jQuery封裝了那些方法來支援Ajax?
$.ajax()、$.get()、$.post()、$obj.load()、$.getJSON()
7.說一說$.ajax()是怎麼使用的?
$.ajax({
url:請求地址
type:請求方式
data:請求資料
dataType:返回的資料型別
async:是否非同步
success:function(result){},回撥函式,當服務端成功響應後執行。
error:function(result){},回撥函式,當出現錯誤時