[Muss für die Front-End-Jobsuche gelesen werden] Ausgewählte Fragen und Antworten zu Front-End-Entwicklungsinterviews_JavaScript
天蓬老师
天蓬老师 2017-11-13 13:04:27
0
0
1627

JavaScript

JavaScript-Prototyp, Prototypkette Was sind die Merkmale?

Was macht Evaluierung?

Seine Funktion besteht darin, die entsprechende Zeichenfolge in JS-Code zu analysieren und auszuführen.
Sie sollten die Verwendung von eval vermeiden, da diese unsicher und sehr leistungsintensiv ist (zweimal, einmal zum Parsen in eine JS-Anweisung und einmal zur Ausführung).

Der Unterschied zwischen null und undefiniert?

Schreiben Sie eine allgemeine Ereignis-Listener-Funktion.

(// EVENT (Ereignis)-Toolset, Quelle: github.com/markyun

markyun.event = {
// Seite wird geladen
ReadyEvent: function (fn) {
if (fn == null) {
fn = document; else {
                window.onload = function() {                                                                            using using ' 's ‐ ‐ ‐ ‐‐ ‐window.onload = function() { ;
                                                          // Parameter: Operationselement, Ereignis. Ereignishandler
AddEvent : function(element, type, handler) {
                                                                                } else if (element. attachmentEvent) {
                                                                                                                              element['on' + type] = handler
// RemoveEvent: Function (Element, Type, Handler) {
if (Element.removenentListener) {
Element.removenentListener (Type, Handler, FALSE);
} ELS e if (Element.datachevent) {
element.detachEvent('on' + type, handler);
            } else {
element['on' + type] = null;},/ // Ereignisse verhindern (hauptsächlich im Event-Bubbling, da IE keine Ereigniserfassung unterstützt)
StopPropagation: Function (EV) {
IF (Ev.stopPropagation) {
Ev.stopPropagation ();
} Else {
EV EV .cancelBubble = true;
                                                                                                                                                                                                                                                 event.returnValue = false; // Holen Sie sich die Referenz auf das Ereignisobjekt und erhalten Sie alle Informationen über das Ereignis. Stellen Sie sicher, dass das Ereignis jederzeit verwendet werden kann.
        getEvent: function(e) {         var ev = e ||.                                     while (c) {
ev = c.arguments[0];
                                                                                                 c = c.caller;
}
}
}
}
return ev;
}
};
Welche Szenarien gelten für Node.js?

Hohe Parallelität, Chatten, Nachrichten-Push in Echtzeit


Einführung in die grundlegenden Datentypen von js.

Zahl, Zeichenfolge, Boolescher Wert, Objekt, undefiniert


Wie implementiert man Vererbung in Javascript?

Durch Prototypen und Konstrukteure


["1", "2", "3"].map(parseInt) Was ist die Antwort?

[1, NaN, NaN] Weil parseInt zwei Parameter (val, radix) erfordert, Map jedoch 3 (Element, Index, Array) übergibt

Wie erstelle ich ein Objekt? (Zeichne die Speicherkarte dieses Objekts)

function Person(name, age) {
this.name = name;
this.age = age;
this.sing = function() { Alert ( this.name) }
}

Lassen Sie uns über das Verständnis dieses Objekts sprechen.

Dies ist ein Schlüsselwort in js. Der Wert ändert sich, wenn die Funktion in verschiedenen Situationen verwendet wird.

Aber es gibt ein allgemeines Prinzip, das heißt, es bezieht sich auf das Objekt, das die Funktion aufruft.

Dies ist im Allgemeinen das globale Objekt Global. Als Methodenaufruf bezieht sich dies dann auf dieses Objekt. Was ist das Ereignis? Was ist der Unterschied zwischen den Ereignismechanismen von IE und Firefox? Wie kann man das Sprudeln stoppen?

1. Eine Operation, die wir auf der Webseite ausführen (einige Operationen entsprechen mehreren Ereignissen). Beispiel: Wenn wir auf eine Schaltfläche klicken, wird ein Ereignis generiert. ist ein Verhalten, das von JavaScript erkannt werden kann.

2. Ereignisverarbeitungsmechanismus: IE ist Ereignissprudeln, Firefox ist Ereigniserfassung;

Was ist Schließung und warum sollten wir sie verwenden?

Nach der Ausführung von say667() sind die internen Variablen des say667()-Abschlusses vorhanden, die internen Variablen der internen Abschlussfunktion sind jedoch nicht vorhanden. Dies führt dazu, dass der Garbage-Collection-Mechanismus GC die von say667() belegten Ressourcen nicht zurückgewinnt. weil say667 Die Ausführung der internen Funktion von () hängt von den Variablen in say667() ab. Dies ist eine sehr einfache Beschreibung dessen, was ein Abschluss bewirkt num++;
return sayAlert;

}

var sayAlert = say667();

sayAlert()//Das Ausführungsergebnis sollte angezeigt werden 667



"use strict"; Was bedeutet das? davon, es zu benutzen?

Wie kann festgestellt werden, ob ein Objekt zu einer bestimmten Klasse gehört?

Instanz von (zu verbessern) verwenden

if(eine Instanz von Person){
alarm('yes');
}

Was genau macht der neue Operator?

1. Erstellen Sie ein leeres Objekt und Folgendes Die Variable verweist auf das Objekt und erbt außerdem den Prototyp der Funktion.

2. Dem dadurch referenzierten Objekt werden Eigenschaften und Methoden hinzugefügt.

3. Das neu erstellte Objekt wird dadurch referenziert und am Ende implizit zurückgegeben.

var obj = {};
obj.__proto__ = Base.prototype;
Base.call(obj);

In Javascript gibt es eine Funktion, die bei der Suche nach Objekten während der Ausführung niemals nach dem Prototyp sucht. Was ist die Funktion? Kennen Sie


hasOwnProperty


JSON?

JSON (JavaScript Object Notation) ist ein leichtes Datenaustauschformat.
Es basiert auf einer Teilmenge von JavaScript. Das Datenformat ist einfach, leicht zu lesen und zu schreiben und beansprucht wenig Bandbreite
{'age':'12', 'name':'back'}

Was sind die Möglichkeiten, das Laden in js zu verzögern?

Verzögern und Asynchronisieren, dynamische Erstellung der DOM-Methode (am häufigsten verwendet), asynchrones Laden von JS bei Bedarf
jsonp, iframe, window.name, window.postMessage, Proxy-Seite auf dem Server festlegen

Wie macht man es modular? ​​​= function() {

                                                                                               {

                                             

AMD (Module/Asynchronous-Definition), CMD (Common Module Definition) Normativer Unterschied?

Welche Methoden des asynchronen Ladens gibt es?

(1) zurückstellen, unterstützt nur IE

(2) asynchron:


(3) Skript erstellen, in DOM einfügen, nach dem Laden zurückrufen


Der Unterschied zwischen document.write und innerHTML

document.write nur Kann Die gesamte Seite neu zeichnen

innerHTML kann einen Teil der Seite neu zeichnen

Was ist der Unterschied zwischen .call() und .apply()?

Im Beispiel wird add verwendet, um sub, add.call(sub,3,1) == add(3,1) zu ersetzen. Das laufende Ergebnis lautet also: Alert(4).

Hinweis: Funktionen in js sind eigentlich Objekte, der Funktionsname ist eine Referenz auf das Funktionsobjekt.

function add(a,b)

{

alarm(a+b);

}


function sub(a,b)
add.call(sub,3, 1);


Was ist der Unterschied? zwischen Jquery und jQuery UI?

*jQuery ist eine js-Bibliothek, die hauptsächlich Selektoren, Eigenschaftsänderungen, Ereignisbindung usw. bereitstellt.

*jQuery UI ist ein Plug-in, das auf jQuery basiert und die Erweiterbarkeit von jQuery nutzt.

Bietet einige häufig verwendete Schnittstellenelemente, wie z. B. Dialogfelder, Ziehverhalten, Größenänderungsverhalten usw.

Haben Sie den Quellcode von JQuery gesehen? Können Sie kurz auf das Umsetzungsprinzip eingehen?


Wie konvertiere ich ein Array in jquery in einen JSON-String und dann wieder zurück?

Diese Funktion ist in jQuery nicht verfügbar, daher müssen Sie zuerst zwei jQuery-Erweiterungen schreiben:

$.fn.stringifyArray = function(array) {
} return JSON.stringify(array)
}

$.fn. parseArray = Funktion (Array) {
json.parse (Array)}} zurückgeben

und dann aufrufen:
$ ("") Optimierte Methode für jQuery?

*Die Leistung der klassenbasierten Selektivität ist im Vergleich zum Id-Selektor sehr teuer, da alle DOM-Elemente durchlaufen werden müssen.

*DOM, das häufig verwendet wird, zuerst zwischenspeichern und dann bedienen. Es ist besser, den Kettenaufruf von Jquery zu verwenden.
Zum Beispiel: var str=$("a").attr("href");

*for (var i = size; i < arr.length; i++) {}
Die for-Schleife sucht jedes Mal nach For Mit der .length-Eigenschaft des Arrays (arr) kann das Festlegen einer Variablen zum Speichern dieser Zahl beim Starten der Schleife dazu führen, dass die Schleife schneller läuft:
for (var i = size, length = arr.length; i < length; i++ ) {}

Bereich und Variablendeklaration in JavaScript anheben?

Wie schreibe ich leistungsstarkes Javascript?

Welche Vorgänge führen zu Speicherverlusten?

Ein Speicherverlust ist jedes Objekt, das bestehen bleibt, nachdem Sie es nicht mehr besitzen oder benötigen.
Der Garbage Collector scannt Objekte regelmäßig und zählt die Anzahl anderer Objekte, die Verweise auf jedes Objekt haben. Wenn ein Objekt 0 Referenzen hat (keine anderen Objekte verweisen darauf) oder die einzige Referenz auf das Objekt zirkulär ist, kann der Speicher des Objekts zurückgefordert werden.

Wenn der erste Parameter von setTimeout eine Zeichenfolge anstelle einer Funktion verwendet, führt dies zu einem Speicherverlust.
Abschluss, Konsolenprotokoll, Schleife (wenn zwei Objekte aufeinander verweisen und sich gegenseitig beibehalten, entsteht eine Schleife)

JQuery kann mehrere Ereignisse gleichzeitig an ein Objekt binden.


天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

Antworte allen(0)
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage