1. Was ist DOM?
DOM (Document Object Model) ist eine Programmierschnittstelle für HTML-Dokumente. Über diese Oberfläche können Sie das Dokument anhand von Skripten beeinflussen und dessen Erscheinungsbild, Stile und Inhalt ändern. Im DOM wird ein Dokument als Knotenbaum dargestellt.
2. Was ist der Unterschied zwischen <span> - und <div> -Elementen?
<span>Ist ein Inline-Element.<div>Ist ein Blockelement.
Elemente
<div>sollten verwendet werden, um Abschnitte eines Dokuments zu formatieren. Und die Elemente dienen <span>als Container für kleine Textmengen, für Bilder und andere ähnliche Seitenelemente.
Es ist zu beachten, dass Sie keine Blockelemente auf Inline-Elemente setzen können. Hier ist ein Beispiel, das unter anderem die falsche Platzierung eines Blockelements innerhalb eines Inline-Elements zeigt (dies ist ein Fragment
<div>I'm illegal</div>innerhalb eines Elements <span>):
<div>Hi<span>I'm the start of the span element <div>I'm illegal</div> I'm the end of the span</span> Bye I'm the end of the div</div>
3. Was sind Meta-Tags?
Meta-Tags sind Tags in einem Seiten-Tag
<head>, die den Inhalt einer Seite beschreiben. Meta-Tags werden auf der Seite nicht angezeigt. Sie sind nur im Code verfügbar.
Ihre Hauptaufgabe ist es, Suchmaschinen den Inhalt der Seiten kurz zu beschreiben. Hier ist ein Beispiel:
<head>
<meta charset="UTF-8">
<meta name="description" content="Description search engines use">
<meta name="keywords" content="Keywords, of, your, page">
<meta name="author" content="Me">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
4. Was ist der Unterschied zwischen Bezeichner- und Klassenselektoren in CSS?
Bezeichner (
id) sind eindeutig. Ein Artikel kann nur eine Kennung haben. Auf einer Seite kann nur ein Element mit einer bestimmten ID vorhanden sein.
Klassennamen (
class) sind nicht eindeutig. Dieselbe Klasse kann mehreren Elementen zugewiesen werden. Einem Element können mehrere Klassen zugewiesen werden.
Wenn ein bestimmter Stil auf mehrere Elemente der Seite angewendet werden muss, muss diese Aufgabe mithilfe von Klassen gelöst werden.
5. Wie verwende ich Medienabfragen in CSS?
Medienabfragen verwenden eine Regel
@media, mit der Sie CSS-Stile auf verschiedene Inhaltstypen anwenden können. Medienabfragen können auch verwendet werden, um Seitenelemente basierend auf den Merkmalen der Umgebung anzupassen, in der die Seiten angezeigt werden.
/* <div> "red" , 600px */
@media only screen and (max-width: 600px) {
div {
background-color: red;
}
}
6. Was sind Pseudoklassen in CSS?
In CSS werden Pseudoklassen verwendet, um die Stile von Elementen zu beschreiben, die sich in speziellen Zuständen befinden. Pseudoklassen können in Verbindung mit CSS-Selektoren verwendet werden, um das Erscheinungsbild von Elementen basierend auf ihren Status anzupassen.
Hier ist ein Beispiel:
/*
<a>, , green.
*/
a:hover {
color: green;
}
/* <a> purple.*/
a:visited {
color: purple;
}
Wenn Sie gefragt werden, ob Sie Pseudoklassen benennen können, finden Sie hier eine Seite mit einer großen Liste davon.
7. Was ist der Unterschied zwischen den folgenden Arten der Positionierung von Elementen: relativ, fest, absolut, statisch?
- Relative Positionierung ist, wenn ein Element von seiner Standardposition verschoben wird.
- Feste Positionierung ist, wenn Sie die Position eines Elements basierend auf den Kanten des Browserfensters anpassen.
- Absolute Positionierung ist die Platzierung eines Elements relativ zum am nächsten positionierten übergeordneten Element und genau dort, wo es vom Entwickler angegeben wurde.
- Die statische Positionierung ist der Standardpositionierungsmodus, in dem Elemente in der Reihenfolge angezeigt werden, in der sie im Dokument beschrieben sind.
8. Was ist der Unterschied zwischen PUT- und POST-Anforderungen?
PUT-Anforderungen führen dazu, dass die Zielressource durch die in der Anforderung übertragenen Daten ersetzt wird. Es kann verwendet werden, um den Inhalt einer vorhandenen Ressource zu aktualisieren oder eine neue Ressource zu erstellen.
POST-Anforderungen führen zu einer ressourcenspezifischen Verarbeitung der in der Anforderung übergebenen Daten. Sie können verwendet werden, um verschiedene Aktionen auszuführen. Einschließlich - zum Erstellen neuer Ressourcen, zum Hochladen von Dateien auf den Server und zum Senden von Formularen.
Ein weiterer Unterschied zwischen PUT- und POST-Anforderungen besteht darin, dass PUT-Anforderungen idempotent sind, POST-Anforderungen jedoch nicht. Das heißt, wenn eine Anforderung, bei der dieselben Daten übertragen werden und die unter derselben URL ausgeführt wird, mehrmals ausgeführt wird, entspricht dies der einmaligen Ausführung dieser Anforderung. Das mehrmalige Ausführen einer POST-Anforderung entspricht nicht dem einmaligen Ausführen. Das heißt, mehrere solcher Anforderungen können beispielsweise zur Erstellung mehrerer Objekte auf dem Server führen.
9. Was ist der Unterschied zwischen der Long Polling-Technologie, dem WebSocket-Protokoll und den vom Server generierten Ereignissen?
- Long Polling . , , , . .
- WebSocket .
- , , HTTP-, .
10. -, ?
Lokaler Speicher ist, wie der Name schon sagt, ein Ort, an dem Browser Daten lokal speichern können. Es können bis zu 10 MB Daten gespeichert werden. Sitzungsspeicher ist eine Art lokaler Speicher, der einer Sitzung zugeordnet ist und nach deren Abschluss gelöscht wird. Der Sitzungsspeicher kann bis zu 5 MB Daten speichern.
Cookies werden verwendet, um kleine Datenmengen zu speichern, die 4 KB nicht überschreiten. Der Browser kann sie verwenden, der Server kann sie vom Browser anfordern.
11. Was ist CORS?
CORS (Cross-Origin Resource Sharing) ist ein browserbasierter Mechanismus, mit dem Seiten auf Ressourcen außerhalb einer bestimmten Domäne zugreifen können. Dies erweitert die Funktionen der Seiten und erhöht die Flexibilität der Richtlinie mit demselben Ursprung.
12. Was ist ein Versprechen?
Versprechen sind Objekte, die JavaScript beim Ausführen asynchroner Vorgänge verwendet. Sie erleichtern die Arbeit mit asynchronen Vorgängen und bieten bequemere Fehlerbehandlungsmechanismen als Rückrufe und Ereignisse.
13. In welchen Staaten kann ein Versprechen sein?
Ein Versprechen kann in einem von drei Staaten sein:
- Erfüllt - Der mit dem Versprechen verbundene Vorgang wurde erfolgreich abgeschlossen.
- Abgelehnt - Der mit dem Versprechen verbundene Vorgang wurde mit einem Fehler abgeschlossen.
- Ausstehend - Ein Versprechen befindet sich in einem ausstehenden Zustand, dh es kann nicht gesagt werden, dass es erfolgreich oder fehlerhaft abgeschlossen wurde.
14. Was ist das Heben von Variablen und Funktionen in JavaScript?
Durch das Heben von Variablen und Funktionen werden ihre Deklarationen an die Spitze ihres Bereichs verschoben (global oder Funktionsbereich).
15. Welche Werte sind in JavaScript falsch?
In JavaScript sind falsche Werte Werte, die bei der Konvertierung in einen Booleschen Typ zu Werten werden
false. Dies sind die folgenden Werte:
- ''
- 0
- Null
- nicht definiert
- NaN
- falsch
- -0
- 0n // Werte vom Typ BigInt verhalten sich bei der Konvertierung in einen booleschen Typ genauso wie Werte vom Typ Number
Ergebnis
Die Fragen, die ich mit Ihnen geteilt habe, wurden während der Interviews gestellt. Ich habe sie in Interviews mit anderen Entwicklern gefragt. Fragen wie diese, ergänzt durch praktische Aufgaben, sind eine gute Möglichkeit, das Wissen eines Kandidaten für die Position des Front-End-Programmierers zu testen.
Ich denke, es gibt viel mehr JavaScript-Fragen , um sich auf ein Front-End-Interview vorzubereiten, als in diesem Artikel behandelt werden. Das Parsen von Fragen zu TypeScript kann ebenfalls sehr hilfreich sein.
Wenn Sie in Ihrem Lebenslauf angeben, dass Sie mit einem Front-End-Framework vertraut sind, sollten Sie sich darauf vorbereiten, dass Ihnen Fragen zum Wissen über dieses Framework gestellt werden.
Welche Fragen wurden Ihnen in Front-End-Interviews gestellt?
