Heim > Web-Frontend > js-Tutorial > Hauptteil

Eine Zusammenfassung häufiger AJAX-Interviewfragen

coldplay.xixi
Freigeben: 2020-09-02 15:31:07
nach vorne
2967 Leute haben es durchsucht

Eine Zusammenfassung häufiger AJAX-Interviewfragen

[Ähnliche Themenempfehlungen: Ajax-Interviewfragen (2020)]

1 es bei der Arbeit? Mit dem Hintergrund interagieren? Können Sie dann über einige Parameter im gekapselten Ajax sprechen?

URL: Die Adresse zum Senden der Anfrage.

Typ: Anfragemethode (Post oder Get ) ist standardmäßig get.

async: Asynchrone Anfragen synchronisieren, StandardtrueAlle Anfragen sind asynchrone Anfragen.

Timeout: Timeout-Einstellung in Millisekunden

Daten: Die Anforderung ist Objekt oder String Typparameter, an den Server gesendete Daten

Cache : Der Standardwert ist true (wenn dataType script ist, lautet der Standardwert false) , auf false gesetzt, wird nicht vom Browser abgerufen Informationen im Cache anfordern.

dataType: Der Datentyp, der voraussichtlich vom Server zurückgegeben wird.

Die verfügbaren Typen sind wie folgt:

xml: Gibt XML zurück Dokumente können mit JQuery verarbeitet werden.

html: Gibt reine Text-HTML-Informationen zurück; enthält Skript Das Tag wird beim Einfügen von DOM ausgeführt.

Skript: Gibt Klartext-JavaScript-Code zurück. Ergebnisse werden nicht automatisch zwischengespeichert.

json: Gibt JSON-Daten zurück.

jsonp: JSONP-Format. Beim Aufrufen einer Funktion mit der Form JSONP, z. B. myurl?callback=?, JQueryDas letzte "?" wird automatisch durch den richtigen Funktionsnamen ersetzt, um die Rückruffunktion auszuführen.

text: Gibt eine einfache Textzeichenfolge zurück.

Erfolg: Die Rückruffunktion, die nach erfolgreicher Anfrage aufgerufen wird, hat zwei Parameter.

(1) wird vom Server zurückgegeben und gemäß den dataType-Parametern verarbeitet.

(2) Eine Zeichenfolge, die den Status beschreibt.

error: erfordert einen Parameter vom Typ Function, eine Funktion, die aufgerufen wird, wenn die Anfrage fehlschlägt. Diese Funktion hat 3 Parameter

(1) XMLHttpRequest Objekt

(2) Fehlermeldung

(3) Erfasstes Fehlerobjekt( Optional)

complete :function(XMLHttpRequest,status){ //Endgültige Ausführungsparameter nach Abschluss der Anfrage

[Themenempfehlung]: Fragen und Antworten zum Ajax-Interview 2020 (aktuell)

2.json-Daten Wenn Sie wissen, wie Sie sein Format verarbeiten, ist dies der Fall Gibt es ein festes Format? Wenn ich eine Anfrage zum Löschen eines Datenelements sende, woher weiß ich, dass das Löschen erfolgreich ist? Oder wo wird es nach dem Löschen angezeigt? .parse()

In JSON-Objekt konvertieren, es basierend auf den Daten analysieren und auf der Seite platzieren. Format:

{} und [] kombiniert mit gespleißt JSONStringSenden Sie eine Anfrage zum Löschen von Daten. Der Hintergrund gibt das Verarbeitungsergebnis zurück und das Frontend beurteilt anhand der Daten, ob die Verarbeitung erfolgreich ist zurückgegebenes Ergebnis und verarbeiten Sie dann die Seitenelemente.

3. Sind Sie schon einmal auf diese Situation gestoßen? Im IE-Browser haben sich die Hintergrundbilddaten geändert, aber der Client hat sich nicht geändert. Er forderte, dass die Cache-Methode

JQuery.ajax()

des Browsers auf cache auf false, die Anfrage wird nicht aus dem Browser-Cache geladen, oder verwenden Sie die

post

-Methode, um Anforderungsdaten werden nicht zwischengespeichert und die Daten werden jedes Mal erneut angefordert 4. Die Implementierungsidee der Registerkarte

Mauszeigerzeit, Aufruf Methode, übergebe

dies

, verbirgt den Inhalt aller Registerkarten teilweise, zeigt dies an und steuert die Anzeige 5. Die Implementierungsidee der Kaskade

Im Allgemeinen werden regionale Daten mithilfe zweidimensionaler Arrays gespeichert, die aus dem Hintergrund abgerufen und dann gespeichert werden

Suchen Sie entsprechend den ersten Optionen in einem Dropdown-Feld die entsprechenden zweidimensionalen Array-Daten und fügen Sie in der Schleife

neue Option() in das Dropdown-Feld ein 6. Karusselldiagramm Umsetzungsideen

Der erste:

Benennen Sie die Bilder der Reihe nach und verwenden Sie einen Timer um den Pfad der Bilder alle paar Sekunden zu ändern

Der zweite Typ:

Verwenden Sie die nahtlose Scroll-Technologie, um alle Bilder in das Bild zu verschieben Seite, und der Timer läuft

scrollen

Scrollen Sie, bestimmen Sie die Scrollstrecke und nehmen Sie den Rest (%) Die Bildbreite ist gleich auf 0, pausieren Sie den Timer, wie viele Sekunden bevor der Timer startet. 7. Sprechen Sie darüber, was Sie über Bootstrap verstehen

Bootstrap wurde auf Basis von HTML5 und CSS3 entwickelt, das sich in jQuery wurde personalisierter und humanisierter. Sie müssen dem Tag nur einen entsprechenden Klassennamen geben 🎜>BootstrapIhren eigenen, einzigartigen Website-Stil und seien Sie mit den meisten jQuery-Plug-ins kompatibel. 8. Der Unterschied zwischen AngularJS und JQ

JQ

Holen Sie es sich zuerst und verwenden Sie es dann. Angularjs

Direkt verwenden9. Der Unterschied zwischen JQmobile und JQ

jQuery Mobile 是创建移动 web 应用程序的框架。jQuery Mobile 适用于所有流行的智能手机和平板电脑。jQuery Mobile 使用 HTML5 和 CSS3 通过尽可能少的脚本对页面进行布局
Nach dem Login kopieren

(1 )

jQuery ist eine js-Bibliothek. Die bereitgestellten Hauptfunktionen sind Selektoren, Attributänderung, Ereignisbindung usw. (2) Die jQuery-Benutzeroberfläche basiert auf
jQuery und verwendet jQuery Erweiterbarkeit, entworfenes Plug-in. Stellt einige häufig verwendete Schnittstellenelemente bereit, z. B. Dialogfelder, Ziehverhalten, Größenänderungsverhalten usw. (3) jQuery selbst konzentriert sich auf den Hintergrund und verfügt nicht über eine schöne Benutzeroberfläche, während
jQuery UI die Mängel ergänzt Im Gegensatz zum ersteren bietet es eine wunderschöne Anzeigeoberfläche, die es den Menschen leichter macht, es zu akzeptieren. Es gibt sowohl eine kraftvolle Backstage als auch eine wunderschöne Frontstage. jQuery UI ist ein jQuery Plug-in, bezieht sich jedoch speziell auf die offizielle Wartung von jQuery Plug-in für die UI Richtung. 10. Welche Bibliotheken haben Sie in Ihrer Arbeit verwendet?

jQuery

11. (1) Blasensortierung, 60-Sekunden-Countdown, (2) Umgang mit den vom Hintergrund zurückgegebenen JSON-Daten, wenn die Seite mehr geladen wird li

1.

Doppelte Schleife, beginnend mit dem ersten Bit und Beurteilung der Größe jedes nachfolgenden Bits. Wenn die Bedingungen erfüllt sind, verwenden Sie das folgende Prinzip, um die Position zu ändernc = a;

a = b;

b = c;

2.

Verwenden Sie JSON.parse() , um den entsprechenden JSON Objekt, und füge li, füge die Daten ein. 12. Implementierungsidee für die Auswahl aller Beurteilen Sie beim Klicken auf das Kontrollkästchen „Alle auswählen“, ob

aktiviert ist

ist wahr oder falsch, ob es wahr ist, beweist, dass alle ausgewählt sind , Holen Sie sich alle entsprechenden Kontrollkästchen unten und ändern Sie aktiviert in wahr, andernfalls ändern Sie es in falsch.

13.有一个输入框,只允许输入数字或字母,如果输入不合法则将输入框的边框变为红色,写代码

       var reg =/^[a-zA-Z0-9]+$/;
       if(!reg.text(输入框取出的value)){
              input.style.border= “red”;
};
Nach dem Login kopieren

14.有一个数组a=[1,2,3],如果数字a中包含1,则将数组内容复制一遍变为[1,2,3,1,2,3],写代码

       for(var i = 0;i<a.length;i++){
              if(a[i] ==1){
                     a.concat(a);
                     break;
}
}15.写一个函数,用于生产随机密码,传入的参数为密码的长度,返回生产的随机密码,要求生成的随机密码必须含有大写字母、小写字母和数字
Nach dem Login kopieren
var padArr = ["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","0","1","2","3","4","5","6","7","8","9"];var padStr = "";function asd(length){
    for(var i = 0 ; i<length;i++){
        padStr += padArr[Math.floor(Math.random()*padArr.length)];
    }
}
Nach dem Login kopieren

16.点击按钮向后台发起请求,将返回的数据直接输出,如果3秒内没有获得返回的数据则显示“请求超时,请重新提交”,写代码

varajaxTimeoutTest = $.ajax({
url:&#39;&#39;,  //请求的URL
timeout : 1000, //超时时间设置,单位毫秒
type : &#39;get&#39;,  //请求方式,get或post
data :{},  //请求所传参数,json格式
dataType:&#39;json&#39;,//返回的数据格式
success:function(data){ //请求成功的回调函数
alert("成功");
},
complete : function(XMLHttpRequest,status){ //请求完成后最终执行参数
if(status==&#39;timeout&#39;){//超时,status还有success,error等值的情况
  ajaxTimeoutTest.abort();//终止请求
  alert("超时");
}
}
});
Nach dem Login kopieren
Nach dem Login kopieren

17.ajax的四部:

var xmlhttp = new XMLHttpRequest();
xmlhttp.open("post||get","URL",true||false);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.onreadystatechange = callBack;
xmlhttp.send(null);
Nach dem Login kopieren

18.ajax接受到的数据类型是什么?

String

JSON

JSON对象

19.ajax接受到的数据如何处理?

JSON对象直接循环使用

JSON串转JSON使用

String直接使用

20.哪些地方需要ajax,哪些地方不需要,ajax的优点是什么,缺点是什么?

页面不进行跳转刷新的时候,异步处理数据的时候,表单自动补全功能----使用Ajax

提交后不再使用原页面,可以进行跳转刷新的,查询之类的功能,可以不用Ajax

优点:

<1>.Daten aktualisieren, ohne sie zu aktualisieren.
AJAXDer größte Vorteil besteht darin, dass es mit dem Server kommunizieren kann, um Daten zu verwalten, ohne die gesamte Seite zu aktualisieren. Dies ermöglicht es Webanwendungen, schneller auf Benutzerinteraktionen zu reagieren und das Senden unveränderter Informationen über das Netzwerk zu vermeiden, was die Wartezeit des Benutzers verkürzt und ein sehr gutes Benutzererlebnis bietet.
<2>.Asynchron mit dem Server kommunizieren.
AJAXVerwendet eine asynchrone Methode zur Kommunikation mit dem Server, ohne den Betrieb des Benutzers zu unterbrechen, und verfügt über eine schnellere Reaktionsfähigkeit. Die Kommunikation zwischen Browser und Server wurde optimiert, wodurch unnötige Datenübertragung, Zeit und Datenverkehr im Netzwerk reduziert wurden.
<3>.Front-End- und Back-End-Lastausgleich.
AJAX kann einen Teil der Arbeit, die zuvor vom Server belastet wurde, auf den Client übertragen und dabei die ungenutzte Kapazität des Clients für die Verarbeitung nutzen, wodurch die Arbeit reduziert wird Belastung des Servers und der Bandbreite, wodurch Platz und Kosten für die Breitbandmiete gespart werden. Und um die Belastung des Servers zu reduzieren, lautet das Prinzip von AJAX Get data on Demand, wodurch die durch redundante Anfragen und Antworten auf dem Server verursachte Belastung minimiert und die Leistung der Website verbessert werden kann.
<4>.Weitgehend unterstützt, basierend auf Standards.
AJAXBasierend auf standardisierter und weithin unterstützter Technologie ist es nicht erforderlich, Browser-Plug-Ins oder Applets herunterzuladen, es ist jedoch die Zustimmung des Kunden erforderlich JavaScript wird im Browser ausgeführt. Mit zunehmender Reife von Ajax wurden auch einige Bibliotheken veröffentlicht, die die Verwendung von Ajax vereinfachen. Ebenso ist eine weitere Technologie zur Unterstützung der Programmierung entstanden, die alternative Funktionen für Benutzer bereitstellt, die JavaScript nicht unterstützen.
<5>.Die Schnittstelle ist von der Anwendung getrennt.
Ajax trennt die Schnittstelle und die Anwendung im WEB (es kann auch als Daten bezeichnet werden). und Präsentationstrennung) fördert die Arbeitsteilung und Zusammenarbeit, reduziert WEB Anwendungsfehler, die durch die Änderung von Seiten durch nichttechnisches Personal verursacht werden, verbessert die Effizienz und ist besser für aktuelle Veröffentlichungssysteme geeignet .

Nachteile:

<1>.AJAX beendet die Funktionen Zurück und Verlauf ist ein Bruch der Browsermechanismen.
Im Falle einer dynamischen Aktualisierung der Seite kann der Benutzer nicht zum vorherigen Seitenstatus zurückkehren, da sich der Browser nur an die statische Seite im Verlauf erinnern kann. Der Unterschied zwischen einer Seite, die vollständig gelesen wurde, und einer Seite, die dynamisch geändert wurde, ist sehr subtil; Benutzer erwarten oft, dass durch Klicken auf die Schaltfläche „Zurück“ der vorherige Vorgang abgebrochen wird, aber in AjaxIn der Bewerbung wird dies nicht möglich sein.
Der Zurück-Button ist ein wichtiges Merkmal einer Standard-Webseite, kann aber nicht mit <🎜 mithalten > jsTolle Zusammenarbeit. Dies ist ein ernstes Problem, das durch Ajax verursacht wird, da Benutzer oft hoffen, den vorherigen Vorgang durch Zurückkehren abzubrechen. Gibt es also eine Lösung für dieses Problem? Die Antwort lautet: Ja, wie diejenigen, die Gmail verwendet haben, wissen, verwendet Gmail AjaxDie Technologie hat dieses Problem gelöst. Sie können zu Gmail zurückkehren, aber sie kann den Mechanismus von Ajax nicht ändern Nur eine relativ dumme, aber effektive Methode. Das heißt, wenn der Benutzer auf die Schaltfläche „Zurück“ klickt, um auf den Verlauf zuzugreifen, wird ein versteckter IFRAME erstellt oder verwendet, um den Inhalt auf der Seite zu reproduzieren. ändern. (Wenn der Benutzer beispielsweise in Google Maps zurückklickt, sucht er in einem versteckten IFRAME und dann werden die Suchergebnisse angezeigt auf dem Ajax-Element, um den Anwendungsstatus auf seinen dann aktuellen Status wiederherzustellen)
Allerdings, obwohl es so heißt Dieses Problem kann gelöst werden, aber die damit verbundenen Entwicklungskosten sind sehr hoch und stehen im Widerspruch zu der schnellen Entwicklung, die das Ajax-Framework erfordert. Dies ist ein sehr ernstes Problem, das durch Ajax verursacht wird.
Ein verwandter Punkt ist, dass die Verwendung dynamischer Seitenaktualisierungen es für Benutzer schwierig macht, einen bestimmten Status in den Favoriten zu speichern. Es wurden Lösungen für dieses Problem gefunden, von denen die meisten URL-Fragment-Identifikatoren (häufig Anker genannt, d. h. URL in <) verwenden 🎜>#), um den Überblick zu behalten und dem Benutzer die Rückkehr zu einem bestimmten Anwendungsstatus zu ermöglichen. (Viele Browser erlauben JavaScript, Anker dynamisch zu aktualisieren, was es Ajax-Anwendungen ermöglicht, Anker gleichzeitig mit dem angezeigten Inhalt zu aktualisieren. . ) Diese Lösungen lösen auch viele der Argumente, die die Zurück-Schaltfläche nicht unterstützen. <2>.AJAX Sicherheitsprobleme. Die
AJAX-Technologie sorgt nicht nur für ein gutes Benutzererlebnis, sondern wirkt sich auch positiv auf die IT aus Unternehmen Die Ajax-Technologie bringt neue Sicherheitsbedrohungen mit sich und ist wie die Einrichtung eines direkten Kanals zu Unternehmensdaten. Dadurch können Entwickler unbeabsichtigt mehr Daten und Serverlogik offenlegen als zuvor. Die Logik von Ajax kann vor der clientseitigen Sicherheitsscan-Technologie verborgen werden, sodass Hacker neue Angriffe von Remote-Servern aus erstellen können. Darüber hinaus ist es bei Ajax auch schwierig, einige bekannte Sicherheitslücken zu vermeiden, wie z. B. Cross-Site-Scripting-Angriffe, SQL-Injection-Angriffe und <🎜basierte Angriffe >Anmeldeinformationen Sicherheitslücken usw.
<3>.Schwache Suchmaschinenunterstützung.
Die Unterstützung für Suchmaschinen ist relativ schwach. Bei unsachgemäßer Verwendung erhöht AJAX den Datenverkehr im Netzwerk und verringert dadurch die Leistung des gesamten Systems.
<4>.Zerstören Sie den Ausnahmebehandlungsmechanismus des Programms.
Zumindest für den Moment, wie Ajax.dll, Ajaxpro.dll Diese Ajax-Frameworks zerstören den Ausnahmemechanismus des Programms. Bezüglich dieses Problems bin ich während des Entwicklungsprozesses darauf gestoßen, aber nach Überprüfung gibt es im Internet fast keine relevante Einführung. Später habe ich ein Experiment durchgeführt und Ajax und den traditionellen Formular-Übermittlungsmodus verwendet, um ein Datenelement zu löschen ... bringt große Schwierigkeiten für unser Debugging mit sich.
<5>. verstößt gegen die ursprüngliche Absicht von URL und Ressourcenpositionierung.
Zum Beispiel gebe ich Ihnen eine URL-Adresse, wenn Ajax< ist verwendete 🎜> Technologie, vielleicht sind das, was Sie unter dieser URL-Adresse sehen, und das, was ich unter dieser URL-Adresse sehe, unterschiedlich. Dies widerspricht der ursprünglichen Absicht der Ressourcenpositionierung.
<6>.AJAX
unterstützt mobile Geräte nicht gut. Einige Handheld-Geräte (z. B. Mobiltelefone, PDA usw.) unterstützen derzeit Ajax nicht. Wenn wir beispielsweise eine Website mit der Ajax-Technologie in einem mobilen Browser öffnen, wird dies derzeit nicht unterstützt.
<7>.Der Client ist zu fett und zu viel Clientcode verursacht Entwicklungskosten.
Komplex und fehleranfällig zu schreiben ; es gibt viele redundante Codes (Schichten umfassen js). Dateien Es ist ein häufiges Problem von AJAX, außerdem wird in der Vergangenheit viel serverseitiger Code jetzt auf dem Client abgelegt); es zerstört den ursprünglichen Zweck von Web Es gibt Standards.

21. Wie viel wissen Sie über domänenübergreifende Anfragen?

Die Same-Origin-Richtlinie legt fest, dass es sich um eine domänenübergreifende Anfrage handelt, wenn der Domänenname, das Protokoll und der Port nicht mit dem Ort übereinstimmen, an dem die Anfrage initiiert wird,

Manchmal müssen Sie eine domänenübergreifende Anforderungstechnologie verwenden,

1:

 Verwenden SieJQuery-Methode, verwenden Sie JSONP-Moduszugriff, dataType : 'jsonp' und übergeben Sie callback=? nach

url

🎜>Ein zufälliger Name der Rückruffunktion wird generiert, oder Sie können ihn selbst benennen.

Der Hintergrund erhält den Wert von

Rückruf, verbinden Sie ihn mit () und geben Sie die Daten ein. Geben Sie () ein, um zur Seite

zurückzukehren. Dies entspricht dem Aufruf der Funktion

Name (Daten).

Zwei:

 

Verwenden SiejsTag-Lademethode

 

Verwenden Sie das script-Tag src, um zu schreiben, was Sie möchten Möchten Sie URL anfordern und die Parameter nach der Adresse verbinden? callback= Funktionsname

 

Der Hintergrund erhält callback Wert, mit () verbinden, die Daten in () eingeben, zur Seite zurückkehren,

entspricht dem Aufruf der Funktion

FunktionName(Daten)

Drei:

后台直接开启同源策略的访问限制,设置响应头信息。

response.setHeader("Access-Control-Allow-Origin","*");

22.如何控制网页在网络传输中的数据量?

分页加载,瀑布流,限制每次加载的数据量。(??????不确定)

23.前端常规开发优化策略?

  • 请减少HTTP请求

  • 请正确理解 Repaint Reflow

  • 请减少对DOM的操作

  • 使用JSON格式来进行数据交换

  • 高效使用HTML标签和CSS样式

  • 使用CDN加速(内容分发网络)

  • CSSJS放到外部文件中引用,CSS放头,JS放尾

  • 精简CSSJS文件(压缩)

  • 压缩图片和使用图片Sprite技术

  • 注意控制Cookie大小和污染

24.为什么异步加载JS文件?加载方式?

平时常用的引入JS方式,是同步模式,又称阻塞模式,会阻止浏览器的后续处理,停止了后续的解析,也就是说,浏览器在下载或执行该js代码块时,后面的标签不会被解析。

异步加载(asyncJS文件,允许页面内容异步加载,仅适用于外部脚本。

延迟加载(defer属性规定是否对脚本执行进行延迟,直到页面加载为止。

25.如果对一个js对象进行深度拷贝?

varajaxTimeoutTest = $.ajax({
url:&#39;&#39;,  //请求的URL
timeout : 1000, //超时时间设置,单位毫秒
type : &#39;get&#39;,  //请求方式,get或post
data :{},  //请求所传参数,json格式
dataType:&#39;json&#39;,//返回的数据格式
success:function(data){ //请求成功的回调函数
alert("成功");
},
complete : function(XMLHttpRequest,status){ //请求完成后最终执行参数
if(status==&#39;timeout&#39;){//超时,status还有success,error等值的情况
  ajaxTimeoutTest.abort();//终止请求
  alert("超时");
}
}
});
Nach dem Login kopieren
Nach dem Login kopieren

26.JS中有哪些数据类型?

number boolean string underfind null

object function array

27.ajax交换模型?同步异步的区别?

  • 触发事件调用函数

  • 创建XMlHttpRequest 对象open连接,send发送后台服务器

  • 后台接收前端数据,根据业务需求访问数据库进行增删改查

  • 数据库返回后台程序所需要的数据

  • 后台拿到数据库数据,进行合理的处理,比如JSON串,返回给前端

  • 前端接收到后台的响应数据,进行解析,根据业务需求动态操作页面元素

28.如何添加HTML事件,三种。

1. 直接在html标签的属性上添加<p οnclick="alert(&#39;p&#39;)">p</p>
2. 用dom的on...方法添加document.getElementById(&#39;p&#39;).onclick = function () {alert(&#39;p&#39;)};
3. 用事件监听addEventListener或attachEvent(IE)添加document.getElementById(&#39;p&#39;).addEventListener(&#39;click&#39;, function () {alert(&#39;p&#39;)}, false);
Nach dem Login kopieren

29.JS面向对象中继承的实现方式?

简单继承:

function A(x){
   this.x=x;
}
Nach dem Login kopieren
function B(x,y){
   this.tmpObj=A;
   this.tmpObj(x);
   delete this.tmpObj;
   this.y=y;
}
Nach dem Login kopieren

完美继承:

function AA(x){
    this.x = x;}AA.prototype.xxx = 2;function Obj(){
    AA.call(this,22);
    this.cc = 11;
    this.constructor = arguments.callee;
}Obj.prototype = new AA();var obj = new Obj();
Nach dem Login kopieren

30.编写一个方法,判断字符串是否是这样的组成,第一个必须是字母,最后一个必须是数字。

function checkStr(str){
       var diyige =str.subStr(0,1);
       var dierge =str.subStr(str.length-1,1);
var reg = /^[a-zA-Z]$/ 
if(reg.test(diyige) &&!isNAN(dierge)){
//第一个是字母,最后一个是数字
}
}
Nach dem Login kopieren

31.如何隐藏一个DOM元素?

Object.style.dispaly = “none”; || Object.style.visibility = “hidden”;
Nach dem Login kopieren

32.document.write,innerHTML和innertext区别是什么?

  • document.write只能重绘整个页面

  • innerHTML可以重绘页面的一部分(包含标签+文字)

  • innertext可以重绘页面的一部分(只包含文字)

33.字符串abcdefg把de换成12,b后面接le,写出JS。

var str = “abcdefg”;
str = str.replace(“de”,”12”);
str = str.replace(“b”,”b1e”);
Nach dem Login kopieren

或者

var str = “abcdefg”;
str = str.split(“de”,”12”);
var str1 =str.subString(0,str.indexOf(‘b’)+1);
var str2 =str.subString(str.indexOf(‘b’)+1);
str = str1+”1e”+str2;
Nach dem Login kopieren

34.判断每个字符出现的次数:hello,最后显示: h:1,e:1,l:2,o:1.

var str = “hello”;
var o = [];
for(var i = 0 ;i<str.length;i++){
if(str.indexOf(str[i]) == i){
o[str[i]] = str.split(str[i]).length-1;
}
}
console.log(o);
Nach dem Login kopieren

35.使用CSS3动画效果实现一个小球的来回滚动。

36.h5的canvas画板如何实现会旋转的地球仪效果?(说出思想)

37.如何使过长的字体自动隐藏?

text-overflow: 
hidden
;
Nach dem Login kopieren

38.一个H5+C3的鼠标悬停效果?

39.移动端跟PC端的js文件区别?

40.如何处理一些手机端的兼容性?

41.IE浏览器兼容性,你了解哪些,简单举例子。

addEventListener() || attachEvent()
Nach dem Login kopieren

42.谈谈你对框架的理解。

对功能进行封装,使用者直接调用,或对样式进行预设置,使用者直接起名字

43.如何实现跨域?具体怎么实现?

第一种:

JSONP,利用传递方法名的方式,告诉后台前端方法名是什么,后台取到后,在名称后面拼接(),把数据(DATA)放到小括号中,返回前端,相当于返回:方法名(data)到前端后就直接调用这个方法了。

$.get(“ULR?callback=?”,function(data){
console.log(data);
})
Nach dem Login kopieren

第二种:

前端正常Ajax访问,后台开启同源策略限制!

“Access-Control-Allow-Origin”,”*”
Nach dem Login kopieren

44.对后台语言了解几种,如果了解其中一种,举例说明一个?

45.与后台的交互,AJAX只是其中的一小部分,其他的知道吗?

46.在上一家公司的要上线作品的具体流程是什么?

前后台项目整合,测试,上线

47.手机端和PC端有什么区别,需要注意哪些方面?

本质上没有什么太大的区别,需要注意一些浏览器的兼容问题。

48.用JQ完整的写出AJAX与后台交互的方法。

$.get(“url”,function(data){
 
});
 
$.post(“url”,{data},function(data){
 
});
 
$.ajax({
url:””,
......
.....
....
});
Nach dem Login kopieren

49.编写一段jq的方法扩展。

50.ECMAScript6怎么写class. 为什么会出现class这种东西?

51.如何判断一个对象是否属于某个类?

var obj = new String("abc"); 
alert(obj instanceof String);
Nach dem Login kopieren

52.使用过哪些可视化控件?

53.什么是闭包?

简单理解成:定义在一个函数内部的函数

闭包本质:将函数内部和函数外部连接起来的一座桥梁

最大用处:

1、可以读取函数内部变量

2 besteht darin, diese Variablen im Gedächtnis zu behalten, das heißt, die Schließung kann dafür sorgen, dass ihre Geburtsumgebung immer existiert

54.eval kann eine bestimmte berechnen String, gibt es einen besseren Weg?

55. Was leistet Initialisierungs-CSS außer der Browserkompatibilität noch?

Empfohlene verwandte Artikel: Ajax-Video-Tutorial

Das obige ist der detaillierte Inhalt vonEine Zusammenfassung häufiger AJAX-Interviewfragen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage