新聞中心
ajax面試問(wèn)題
下面列出了常見(jiàn)的AJAX面試問(wèn)題和答案。

創(chuàng)新互聯(lián)是一家專業(yè)提供德江企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、H5場(chǎng)景定制、小程序制作等業(yè)務(wù)。10年已為德江眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。
1、什么是AJAX?
AJAX代表異步JavaScript和XML。它是一組用于異步顯示數(shù)據(jù)的相關(guān)技術(shù)。換句話說(shuō),它在不重新加載網(wǎng)頁(yè)的情況下發(fā)送和檢索數(shù)據(jù)。
2、AJAX有哪些優(yōu)點(diǎn)?
- 快速回復(fù)
- 帶寬利用率
- 在從服務(wù)器檢索數(shù)據(jù)之前,不會(huì)阻止用戶。
- 它允許我們只將重要數(shù)據(jù)發(fā)送到服務(wù)器。
- 它使應(yīng)用程序具有交互性和更快速。
3、AJAX有哪些缺點(diǎn)?
- 取決于JavaScript
- 安全問(wèn)題
- 調(diào)試很困難
4、原生js ajax請(qǐng)求有幾個(gè)步驟?分別是什么
//創(chuàng)建 XMLHttpRequest 對(duì)象
var ajax = new XMLHttpRequest();
//規(guī)定請(qǐng)求的類型、URL 以及是否異步處理請(qǐng)求。
ajax.open('GET',url,true);
//發(fā)送信息至服務(wù)器時(shí)內(nèi)容編碼類型
ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
//發(fā)送請(qǐng)求
ajax.send(null);
//接受服務(wù)器響應(yīng)數(shù)據(jù)
ajax.onreadystatechange = function () {
if (obj.readyState == 4 && (obj.status == 200 || obj.status == 304)) {
}
};
5、ajax幾種請(qǐng)求方式?他們的優(yōu)缺點(diǎn)?
常用的post,get,delete。不常用copy、head、link等等。
區(qū)別:
(1)post比get安全 (因?yàn)閜ost參數(shù)在請(qǐng)求體中。get參數(shù)在url上面)
(2)get傳輸速度比post快 根據(jù)傳參決定的。(post通過(guò)請(qǐng)求體傳參,后臺(tái)通過(guò)數(shù)據(jù)流接收。速度稍微慢一些。而get通過(guò)url傳參可以直接獲取)
(3)post傳輸文件大理論沒(méi)有限制 get傳輸文件小大概7-8k ie4k左右
(4)get獲取數(shù)據(jù) post上傳數(shù)據(jù)(上傳的數(shù)據(jù)比較多 而且上傳數(shù)據(jù)都是重要數(shù)據(jù)。所以不論在安全性還是數(shù)據(jù)量級(jí) post是最好的選擇)
6、目前市場(chǎng)上運(yùn)行的AJAX的真實(shí)Web應(yīng)用程序是什么?
- 推特
- Gmail
- Javatpoint
- Youtube
7、AJAX有哪些安全問(wèn)題?
- AJAX源代碼是可讀的
- 攻擊者可以將腳本插入系統(tǒng)
8、同步和異步請(qǐng)求有什么區(qū)別?
同步請(qǐng)求會(huì)阻止用戶,直到檢索到響應(yīng),而異步不會(huì)阻止用戶。
9、AJAX使用了哪些技術(shù)?
- HTML / XHTML和CSS - 這些技術(shù)用于顯示內(nèi)容和樣式。
- DOM - 用于動(dòng)態(tài)顯示和與數(shù)據(jù)交互。
- XML - 用于與服務(wù)器之間傳送數(shù)據(jù)
- XMLHttpRequest - 用于客戶端和服務(wù)器之間的異步通信。
- JavaScript - 主要用于客戶端驗(yàn)證。
10、XMLHttpRequest的目的是什么?
- 它將后臺(tái)數(shù)據(jù)發(fā)送到服務(wù)器。
- 它從服務(wù)器請(qǐng)求數(shù)據(jù)。
- 它從服務(wù)器接收數(shù)據(jù)。
- 它在不重新加載頁(yè)面的情況下更新數(shù)據(jù)。
11、XMLHttpRequest的屬性是什么?
下面給出了XMLHttpRequest對(duì)象的重要屬性。
onReadyStateChange- 只要readystate屬性發(fā)生變化,就會(huì)調(diào)用它。readyState- 表示請(qǐng)求的狀態(tài)。responseText- 它將響應(yīng)作為文本返回。responseXML- 它以XML格式返回響應(yīng)。status- 返回請(qǐng)求的狀態(tài)編號(hào)。statusText- 返回狀態(tài)的詳細(xì)信息。
12、XMLHttpRequest的重要方法是什么?
abort()- 用于取消當(dāng)前請(qǐng)求。getAllResponseHeaders()- 返回標(biāo)題詳細(xì)信息。getResponseHeader()- 返回特定的標(biāo)題詳細(xì)信息。open()- 用于打開(kāi)請(qǐng)求。send()- 用于發(fā)送請(qǐng)求。setRequestHeader()- 它添加了請(qǐng)求標(biāo)頭。
13、XMLHttpRequest使用的open()方法有哪些類型?
open(method,URL)- 它打開(kāi)指定get或post方法和URL的請(qǐng)求。open(method,URL,async)- 它與上面相同但是指定異步或不指定。open(method,URL,async,userName,password)- 與上面相同,但指定用戶名和密碼。
14、XMLHttpRequest使用的send()方法有哪些類型?
send()- 它發(fā)送get請(qǐng)求send(string)- 發(fā)送帖子請(qǐng)求。
15、回調(diào)函數(shù)在AJAX中的作用是什么?
回調(diào)函數(shù)將函數(shù)作為參數(shù)傳遞給另一個(gè)函數(shù)。如果我們必須在網(wǎng)站上執(zhí)行各種AJAX任務(wù),那么我們可以創(chuàng)建一個(gè)用于執(zhí)行XMLHttpRequest的函數(shù)和一個(gè)用于執(zhí)行每個(gè)AJAX任務(wù)的回調(diào)函數(shù)。
16、AJAX中的JSON是什么?
JSON代表JavaScript Object Notation。在AJAX中,它用于在瀏覽器和服務(wù)器之間交換數(shù)據(jù)。它很容易理解,數(shù)據(jù)交換比XML快。它支持?jǐn)?shù)組,對(duì)象,字符串,數(shù)字和值。
request.onreadystatechange = function (){
if(request.readyState == 4)
{
var jsonObj = JSON .parse(request.responseText); // JSON.parse()返回JSON對(duì)象
的document.getElementById( “日期”).innerHTML = jsonObj .date;
的document.getElementById( “時(shí)間”).innerHTML = jsonObj .時(shí)間;
}
}
17、調(diào)試AJAX應(yīng)用程序的工具有哪些?
有幾種用于調(diào)試AJAX應(yīng)用程序的工具。
- 適用于Mozilla Firefox的Firebug
- 適用于IE的Fiddler(Internet Explorer)
- JavaScript HTML調(diào)試器
- MyEclipse AJAX工具
- 腳本調(diào)試器
18、AJAX中的回發(fā)類型有哪些?
在AJAX中有兩種類型的回發(fā)。
- 同步回發(fā) - 它會(huì)阻止客戶端直到操作完成。
- 異步回發(fā) - 它不會(huì)阻止客戶端。
19、AJAX中請(qǐng)求的準(zhǔn)備狀態(tài)有哪些?
在AJAX中有5個(gè)請(qǐng)求的就緒狀態(tài)。
- 0:意味著未被發(fā)現(xiàn)
- 1:表示已打開(kāi)
- 2:表示HEADERS_RECEIVED
- 3:表示裝載
- 4:表示完成
20、常見(jiàn)的AJAX框架是什么?
- Dojo Toolkit
- YUI
- Google Web Toolkit(GWT)
- Spry
- MooTools
- Prototype
21、你如何測(cè)試AJAX代碼?
JUnit是客戶端JavaScript的開(kāi)源單元測(cè)試框架。需要?jiǎng)?chuàng)建測(cè)試用例。單元測(cè)試用例是一個(gè)代碼,用于確保程序邏輯按預(yù)期工作。
22、JavaScript和AJAX有什么區(qū)別?
| JavaScript | AJAX |
|---|---|
| JavaScript是一種基于對(duì)象的腳本語(yǔ)言。 | AJAX是一組相互關(guān)聯(lián)的技術(shù),如JavaScript,XML,HTML,CSS等 |
| 它請(qǐng)求服務(wù)器并等待響應(yīng)。 | 它向服務(wù)器發(fā)送請(qǐng)求,不等待響應(yīng)。 |
| 重新加載頁(yè)面時(shí)會(huì)占用更多帶寬。 | 它不會(huì)重新加載頁(yè)面,因此占用的帶寬更少。 |
網(wǎng)站標(biāo)題:創(chuàng)新互聯(lián)AJAX教程:AJAX面試問(wèn)題
文章地址:http://m.fisionsoft.com.cn/article/djhdece.html


咨詢
建站咨詢
