Was ist das schwierigste technische Problem, auf das Sie gestoßen sind? Wie hast du es gelöst?
Welche Bibliotheken werden am häufigsten verwendet? Häufig verwendete Front-End-Entwicklungstools? Welche Anwendungen oder Komponenten haben Sie entwickelt?
Wie rekonstruiere ich die Seite?
Listen Sie die Funktionen auf, die den IE von anderen Browsern unterscheiden?
Welches Buch sagt, dass 99 % der Websites neu strukturiert werden müssen?
Was sind „Graceful Degradation“ und „Progressive Enhancement“?
Wie können WEB-Anwendungen Daten aktiv vom Server an den Client übertragen?
Haben Sie Ihre eigene Meinung zu den Vor- und Nachteilen von Node?
* (Vorteile) Da Node ereignisgesteuert und nicht blockierend ist, eignet es sich sehr gut für die Verarbeitung gleichzeitiger Anforderungen.
Daher sind auf Node basierende Proxyserver viel leistungsfähiger als Server, die mit anderen Technologien (z. B. Ruby) implementiert sind.
Darüber hinaus ist der Client-Code, der mit dem Node-Proxy-Server interagiert, in der Javascript-Sprache geschrieben.
Daher sind sowohl der Client als auch der Server in derselben Sprache geschrieben, was eine sehr schöne Sache ist.
* (Nachteile) Node ist ein relativ neues Open-Source-Projekt, daher ist es nicht stabil, es ändert sich ständig
und es mangelt an ausreichender Unterstützung für Bibliotheken von Drittanbietern. Es sieht so aus, wie Ruby/Rails damals aussah.
Welche Methoden zur Leistungsoptimierung haben Sie?
(Siehe Yahoos 14 Prinzipien zur Leistungsoptimierung).
(1) Reduzieren Sie die Anzahl der HTTP-Anfragen: CSS Sprites, JS, CSS-Quellcode-Komprimierung, entsprechende Bildgrößenkontrolle; CDN-Hosting, Datencache, Bildserver.
(2) Front-End-Vorlage JS + Daten zur Reduzierung der durch HTML-Tags verursachten Bandbreitenverschwendung. Das Front-End verwendet Variablen, um AJAX-Anforderungsergebnisse zu speichern. Es ist nicht erforderlich, bei jeder Verarbeitung lokale Variablen anzufordern, wodurch die Anzahl verringert wird Anzahl der Anfragen
(3) Verwenden Sie innerHTML anstelle von DOM-Operationen und optimieren Sie die JavaScript-Leistung.
(4) Wenn viele Stile festgelegt werden müssen, legen Sie den Klassennamen fest, anstatt den Stil direkt zu bedienen.
(5) Verwenden Sie weniger globale Variablen und speichern Sie die Ergebnisse der DOM-Knotensuche im Cache. Reduzieren Sie E/A-Lesevorgänge.
(6) Vermeiden Sie die Verwendung von CSS-Ausdrücken (CSS-Ausdrücken), auch bekannt als dynamische Eigenschaften (dynamische Eigenschaften).
(7) Bild vorab laden, das Stylesheet oben und das Skript unten plus Zeitstempel platzieren.
(8) Vermeiden Sie die Verwendung einer Tabelle im Hauptlayout der Seite. Die Tabelle wird erst angezeigt, wenn der Inhalt vollständig heruntergeladen ist. Die Anzeige ist langsamer als das Div+CSS-Layout.
Was sind die http-Statuscodes? Was meinen sie?
100-199 wird verwendet, um bestimmte Aktionen anzugeben, die der Kunde entsprechend ergreifen sollte.
200-299 wird verwendet, um eine erfolgreiche Anfrage anzuzeigen.
300-399 werden für verschobene Dateien verwendet und sind häufig in den Standort-Header-Informationen enthalten, um die neuen Adressinformationen anzugeben.
400-499 wird verwendet, um Clientfehler anzuzeigen. 400 1. Die Semantik ist falsch und die aktuelle Anfrage kann vom Server nicht verstanden werden. 401 Die aktuelle Anfrage erfordert eine Benutzerauthentifizierung. 403 Der Server hat die Anfrage verstanden, weigert sich jedoch, sie auszuführen.
500-599 wird zur Unterstützung von Serverfehlern verwendet. 503 – Dienst nicht verfügbar
Was passiert im Prozess von der Eingabe der URL bis zum Abschluss des Seitenladens und der Anzeige einer Seite? (Je detaillierter der Prozess, desto besser)
Durchsuchen Sie den Browser-Cache
DNS-Auflösung, finden Sie die IP-Adresse, die dem Domänennamen entspricht, leiten Sie um (301), stellen Sie eine zweite GET-Anfrage aus
Führen Sie eine HTTP-Protokollsitzung durch
Client sendet Header (Anfrage Header)
Server-Feedback-Header (Antwort-Header)
Das HTML-Dokument wird heruntergeladen
Der Dokumentbaum wird erstellt und die Datei mit dem angegebenen MIME-Typ ist gemäß der Markierungsanforderung erforderlich
Die Datei wird angezeigt
[
Die von Der Browser ist grob in die folgenden Schritte unterteilt:
Laden: Führen Sie die Auflösung des Domänennamens gemäß der angeforderten URL durch, initiieren Sie eine Anfrage an den Server und empfangen Sie Dateien (HTML, JS, CSS, Bilder usw.).
Parsen: Führen Sie eine Syntaxanalyse für geladene Ressourcen (HTML, JS, CSS usw.) durch und schlagen Sie entsprechende interne Datenstrukturen vor (z. B. HTML-DOM-Baum, JS-(Objekt-)Attributtabelle, CSS-Stilregeln usw.)
}
Kennen Sie neben Frontend noch weitere Technologien? Was ist Ihre größte Fähigkeit?
Was sind Ihre am häufigsten verwendeten Entwicklungstools und warum?
Wie verstehen Sie die Position des Front-End-Schnittstelleningenieurs? Wie sind seine Aussichten?
Das Frontend ist der Programmierer, der dem Benutzer am nächsten ist, näher als das Backend, die Datenbank, der Produktmanager, der Betrieb und die Sicherheit.
1. Schnittstelleninteraktion realisieren
2. Benutzererfahrung verbessern
3. Mit Node.js kann das Front-End einige Dinge auf der Serverseite realisieren
Das Front-End ist der Programmierer, der dem Benutzer am nächsten ist, und die Fähigkeit von Das Frontend soll das Produkt von 90 auf 100 Punkte oder noch besser weiterentwickeln.
Beteiligen Sie sich am Projekt, schließen Sie das Rendering schnell mit hoher Qualität und einer Genauigkeit von 1 Pixel ab.
Kommunizieren Sie mit Teammitgliedern, UI-Design, Produktmanager;
Gute Seitenstruktur, Seitenrekonstruktion und Benutzererfahrung;
Umgang mit Hacks, Seien Sie kompatibel und schreiben Sie schöne Codeformate.
Optimieren Sie den Server und nutzen Sie die neueste Front-End-Technologie.
Was haltet ihr von Überstunden?
Überstunden zu machen ist wie Geld leihen. Das Prinzip sollte sein, der Not zu helfen, nicht den Armen.
Wie verwalten Sie normalerweise Ihre Projekte?
Das frühe Team muss den globalen Stil (globe.css), den Codierungsmodus (utf-8) usw. festlegen.
Die Schreibgewohnheiten müssen konsistent sein (z. B. verwenden alle das Vererbungsschreiben und einzelne Stile werden in einem geschrieben). Zeile);
Anmerkungsstile Personen, jedes Modul ist zeitlich markiert (wobei die Schlüsselstilaufrufe markiert sind);
Seiten sind in Ordner unterteilt Um Menschen mit der JS-Funktion als quasi-englische Übersetzung zu speichern, verwenden Sie die integrierte Images.png-PNG8-Formatdatei so weit wie möglich, um so viel wie möglich zu verwenden.
Lassen Sie uns über einige der beliebtesten Dinge der letzten Zeit sprechen? Welche Websites besuchen Sie häufig?
Node.js, Mongodb, npm, MVVM, MEAN, three.js
Wie kann die Benutzererfahrung auf dem mobilen Endgerät (Android IOS) verbessert werden?
Klare visuelle vertikale Linien, Gruppierung von Informationen, ultimative Subtraktion,
Nutzung Wählen Sie alternative Eingaben, Beschriftungen und Textanordnungen.Verlassen Sie sich auf Klartext zur Bestätigung von Passwörtern und eine angemessene Tastaturnutzung.
Welche Rolle spielen Sie im aktuellen Team und welche offensichtliche Rolle spielen Sie?
Was ist Ihrer Meinung nach ein Full-Stack-Entwickler?
Stellen Sie eines Ihrer stolzesten Werke vor?
Was sind deine Stärken? Was sind die Nachteile?
Was sind die neuesten Web-Frontend-Technologien (zukünftige Entwicklungsrichtungen), denen Sie derzeit Aufmerksamkeit schenken?
Wie funktioniert das Front-End-Team (der Prozess der Implementierung eines Produkts)?Wie sieht die Gehaltsstruktur des Unternehmens aus?
老师原谅我问一个和这个标题无关的问题!我只是找不见可以帮到我的人,请见谅!
新企业主要是厂子的皮带运输机,有个软件对机器的实时监控,数据的采集,还有单位厂区的摄像头的监控!这些都上传服务器,对于这样的要求需要怎么样的服务器配置,请推荐一下!我看上一个CPU4核心,内存8g 网速10Mbps 不知道怎么样,请老师推荐一下,在此谢过!