Inhaltsverzeichnis
Grundlegende Funktionen
Modulkompilierung: In diesem Artikel wird dieser Prozess nicht erläutert. Dieser Prozess wird im nächsten Kapitel ausführlich erläutert.
Auf jedes Modul kann über exports oder module.exports zugegriffen werden Schnittstelle
Heim Web-Frontend js-Tutorial Grundlegendes Erlernen des Knotens: Was Sie über das Frontend wissen müssen [Zusammenfassung]

Grundlegendes Erlernen des Knotens: Was Sie über das Frontend wissen müssen [Zusammenfassung]

Mar 30, 2023 pm 08:51 PM
前端 node.js

In diesem Artikel werden die grundlegenden Wissenspunkte von Node erläutert und einige Nodejs-Kenntnisse, die das Front-End kennen muss, zusammengefasst und weitergegeben. Ich hoffe, dass es für alle hilfreich ist!

Grundlegendes Erlernen des Knotens: Was Sie über das Frontend wissen müssen [Zusammenfassung]

Ob es sich um Front-End-Entwicklung oder Back-End-Entwicklung handelt, ich persönlich bin der Meinung, dass man sich nur verbessern kann, wenn man aus seiner Komfortzone ausbricht. Wir müssen auch wissen, dass Lernen ohne Nachdenken zu Verwirrung führt. Daher ist es notwendig, das serverseitige Wissen zu verstehen, das am engsten mit dem Front-End zusammenhängt, und das Aufkommen von NodeJS kann als Front-End-Entwicklung bezeichnet werden eine schnellere Möglichkeit, das Backend zu verstehen. Im Folgenden sind einige meiner Erfahrungen beim Erlernen von NodeJS aus der Front-End-Perspektive aufgeführt.

Grundlegende Funktionen

Um NodeJS schnell zu verstehen, können Sie sich die folgenden Aspekte ansehen: Node-Modulkonzept (ECMAScript2015 unterstützt das Frontend und ist leicht zu verstehen), V8-Engine (wie der Browser), asynchroner Betrieb (basierend auf v8 und Browser-Verarbeitung ist etwas anders), ereignisgesteuert (basierend auf v8 und Browser ist etwas anders), knotenbasierte API. [Verwandte Tutorial-Empfehlungen: nodejs-Video-Tutorial, Programmierlehre]

module

nodejs-Module können grob in drei Typen unterteilt werden: Kernmodule, Module von Drittanbietern, benutzerdefinierte Module. Jedes Modul hat eine andere Ladepriorität.

  • Kernmodul: Integriertes NodeJS-Modul, das als grundlegende API von NodeJS verstanden werden kann, z. B. unser häufig verwendeter Pfad OS FS usw. Diese Module sind auch die Grundlage für die Interaktion unserer Nodejs mit dem Server.
  • Drittanbietermodul: NPM-Paket, das von der Plattform des NodeJS-Paketverwaltungstools installiert wird.
  • Benutzerdefiniertes Modul: Dies bezieht sich normalerweise auf unser eigenes definiertes Dateimodul. Laden und Kompilieren von Modulen
Cache-Prioritätsprinzip: Aus dem Dateianalysepfad können wir ersehen, dass NodeJS zunächst prüft, ob der Cache im Speicher vorhanden ist, und den Cache lädt, falls vorhanden.

Modulkompilierung: In diesem Artikel wird dieser Prozess nicht erläutert. Dieser Prozess wird im nächsten Kapitel ausführlich erläutert.

  • Standards
    Das Konzept der JavaScript-Modulentwicklung ist im Wesentlichen wie folgt: „Skript“-Einführung => Scope-Funktion => Selbstausführende Funktion => Commonjs (AMD). Module in NodeJS übernehmen hauptsächlich CommonJS-Spezifikationen, wie unten gezeigt.
  • Jede Datei ist ein Modul und hat ihren eigenen Umfang.
Die in jeder Datei definierten Variablen, Funktionen und Klassen sind privat und für andere Dateien unsichtbar.

Auf jedes Modul kann über exports oder module.exports zugegriffen werden Schnittstelle

Jedes Modul lädt ein anderes Modul über require

    Wir verwenden üblicherweise Require-Exporte in NodeJS-Modulen. Exporte basieren alle auf Commonjs.
  • Asynchrone Vorgänge
  • exports 或者 module.exports 对外暴露接口
  • 每个模块通过 require 加载另外的模块

我们在nodejs中常用require exports module.exports都是基于Commonjs来的。

异步操作

异步操作对于前端开发很易了解,我们在JavaScript中到处都充斥的异步操作,回调函数,promise,setTimeout这些都是异步相关的操作,最基础的DOM渲染也是异步的,nodejs和JavaScript关联最深的也是这块,但大家请注意这两个处理方式有一些的不同,不同点此处不在多说后续会更新。以下简述下node的异步特点:

  • 异步是通过Event Loop实现,其中有宏任务和微任务的概念
  • node和JavaScript在异步的处理上有所区别

网上找到的一张事件循环的图:Grundlegendes Erlernen des Knotens: Was Sie über das Frontend wissen müssen [Zusammenfassung]

V8引擎

  • V8 是驱动 Google Chrome 的 JavaScript 引擎的名称。 这是在使用 Chrome 浏览时获取我们的 JavaScript 并执行它的东西。
  • 在Nodejs,v8是用来它提供了多种可调用的API,如读写文件、网络请求、系统信息等。另一方面,因为CPU执行的是机器码,它还负责将JavaScript代码解释成机器指令序列执行,这部分工作是由V8引擎
Asynchrone Vorgänge sind für die Front-End-Entwicklung leicht zu verstehen. Wir sind überall in JavaScript voll von asynchronen Vorgängen Das grundlegende DOM-Rendering ist ebenfalls asynchron, was die engste Verbindung zwischen NodeJS und JavaScript darstellt. Bitte beachten Sie jedoch, dass es einige Unterschiede zwischen den beiden Verarbeitungsmethoden gibt. Ich werde hier nicht näher auf die Unterschiede eingehen und sie später aktualisieren. Im Folgenden finden Sie eine kurze Beschreibung der asynchronen Eigenschaften des Knotens:

Grundlegendes Erlernen des Knotens: Was Sie über das Frontend wissen müssen [Zusammenfassung]

Asynchron wird durch eine Ereignisschleife implementiert, die die Konzepte von Makroaufgaben und Mikroaufgaben umfasst.

Knoten und JavaScript weisen Unterschiede in der asynchronen Verarbeitung auf. Ein online gefundenes Ereignis Schleifenbild: Grundlegendes Erlernen des Knotens: Was Sie über das Frontend wissen müssen [Zusammenfassung]

🎜V8 Engine🎜🎜🎜🎜🎜V8 ist der Name der JavaScript-Engine, die Google Chrome steuert. Dabei handelt es sich um etwas, das unser JavaScript übernimmt und es beim Surfen mit Chrome ausführt. 🎜🎜In Nodejs wird v8 verwendet. Es bietet eine Vielzahl aufrufbarer API, wie z. B. das Lesen und Schreiben von Dateien, Netzwerkanfragen, Systeminformationen usw. Da die CPU andererseits Maschinencode ausführt, ist sie auch für die Interpretation des JavaScript-Codes in eine Folge von Maschinenanweisungen zur Ausführung verantwortlich die V8-EngineComplete🎜🎜🎜🎜Der Kern von nodejs ist V8, mit dem JavaScript in eine Sprache kompiliert wird, die von der Maschine erkannt werden kann🎜🎜🎜🎜Ereignisgesteuert🎜🎜🎜🎜Ereignis -gesteuert ist eigentlich ein häufig verwendetes Architekturmuster in der Softwarearchitektur. Einfach ausgedrückt besteht es darin, ein Ereignis zu erstellen (zu registrieren), dieses Ereignis abzuhören und es entsprechend dem Status des Ereignisses zu verarbeiten. Die meisten Kern-APIs in NodeJS basieren auf der idiomatischen asynchronen ereignisgesteuerten Architektur. Darüber hinaus können die Kernmodulereignisse in Node zum Erstellen benutzerdefinierter Ereignisse verwendet werden. 🎜<p><strong><span style="max-width:90%">Häufig verwendete API</span></strong></p> <ul> <li>fs: Wird häufig zum Anzeigen, Bearbeiten, Erstellen und für andere Vorgänge von Dateien verwendet. </li> <li>http: Schlüsselmodul des Netzwerks. </li> <li>Socket: Socket-Netzwerkkommunikation. </li> <li>events: Ereignismodul </li>Anwendungsszenarien </ul> <h2> <strong></strong>Backend-Dienst</h2> <ul>Skriptverarbeitung<li> <li> </ul>Server<p><strong><span style="font-size: 18px;"></span>In den ersten Jahren, als NodeJS auf den Markt kam, waren die meisten Entwickler nicht optimistisch, ob NodeJS in einer Produktionsumgebung angewendet werden sollte. Nach der Praxis in den letzten Jahren wurde die Single-Thread-Anwendung von nodejs bei der Handhabung von Szenarien mit hoher Parallelität jedoch gut getestet. Derzeit gibt es in Online-Produkten viele NodeJS-basierte Dienste. Darüber hinaus verfügt NodeJS auch über viele stabile serverseitige Frameworks, die Java Spring ähneln. Hier sind einige häufig verwendete: </strong></p> <p>Koa: ein Entwicklungsmodell basierend auf dem Zwiebelmodell. </p> <ul>Express: ein serverseitiges NodeJS-Framework mit Routing der Kern <li>Fastify: eine Belegung Ein Framework mit extrem kleinen Ressourcen und extrem hoher Geschwindigkeit. Derzeit ist es das schnellste Framework. <li> <li>Hinweis: Es gibt viele Frameworks für verschiedene Geschäftstypen. Wenn Sie interessiert sind, können Sie sich darüber informieren ? Warum kann ein Front-End-Dienst mit nur einer Befehlszeile ausgeführt werden? Warum kann eine Befehlszeile das Frontend kompilieren? Warum hat unser Vue-Code letztendlich eine Menge JS ausgegeben? Wenn wir den Quellcode dieser Funktionen untersuchen, werden wir feststellen, dass fast alle dieser Funktionen auf Basis von NodeJS entwickelt wurden. Im Folgenden ist unsere Verwendung von NodeJS in täglichen Tools aufgeführt. </li> </ul> <p>Lokaler Dienst: Die von Webpack aktivierten lokalen Dienst-Plug-Ins werden alle basierend auf dem http-Modul von nodejs implementiert. </p> <p>Kompilierung und Verpackung: Die .vue-Datei von vue, die jsx-Datei von React oder häufig verwendete .ts-Dateien werden schließlich zu js-Dateien. Jeder denkt, es sei ein Webpack. Tatsächlich basiert das gesamte Webpack auf NodeJS. Die Fähigkeit, Dateien zu kompilieren, hängt eng mit dem FS-Modul von NodeJS zusammen. <strong><span style="font-size: 18px;"></span></strong>Zusammenfassung</p> <p></p>Ich habe kurz über die Grundlagen von NodeJS aus der Front-End-Perspektive gesprochen. Jeder Punkt kann separat besprochen werden. Dies dient nur dazu, jedem ein allgemeines Verständnis von Node zu vermitteln, um das spätere Lernen zu erleichtern. Derzeit habe ich viele Projekte mit nodejs abgeschlossen. Nachdem ich es häufiger verwendet habe, kann ich einige technische Front-End-Entwicklungen aus einer breiteren Perspektive betrachten. <ul> <li>Weitere Informationen zu Knoten finden Sie unter: </li>nodejs-Tutorial<li>! </li> </ul>

Das obige ist der detaillierte Inhalt vonGrundlegendes Erlernen des Knotens: Was Sie über das Frontend wissen müssen [Zusammenfassung]. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP und Vue: eine perfekte Kombination von Front-End-Entwicklungstools PHP und Vue: eine perfekte Kombination von Front-End-Entwicklungstools Mar 16, 2024 pm 12:09 PM

PHP und Vue: eine perfekte Kombination von Front-End-Entwicklungstools In der heutigen Zeit der rasanten Entwicklung des Internets ist die Front-End-Entwicklung immer wichtiger geworden. Da Benutzer immer höhere Anforderungen an das Erlebnis von Websites und Anwendungen stellen, müssen Frontend-Entwickler effizientere und flexiblere Tools verwenden, um reaktionsfähige und interaktive Schnittstellen zu erstellen. Als zwei wichtige Technologien im Bereich der Front-End-Entwicklung können PHP und Vue.js in Kombination als perfekte Waffe bezeichnet werden. In diesem Artikel geht es um die Kombination von PHP und Vue sowie um detaillierte Codebeispiele, die den Lesern helfen sollen, diese beiden besser zu verstehen und anzuwenden

Häufig gestellte Fragen von Front-End-Interviewern Häufig gestellte Fragen von Front-End-Interviewern Mar 19, 2024 pm 02:24 PM

In Front-End-Entwicklungsinterviews decken häufige Fragen ein breites Themenspektrum ab, darunter HTML/CSS-Grundlagen, JavaScript-Grundlagen, Frameworks und Bibliotheken, Projekterfahrung, Algorithmen und Datenstrukturen, Leistungsoptimierung, domänenübergreifende Anfragen, Front-End-Engineering, Designmuster sowie neue Technologien und Trends. Interviewerfragen sollen die technischen Fähigkeiten, die Projekterfahrung und das Verständnis des Kandidaten für Branchentrends beurteilen. Daher sollten Kandidaten in diesen Bereichen umfassend vorbereitet sein, um ihre Fähigkeiten und Fachkenntnisse unter Beweis zu stellen.

Wie verwende ich die Go-Sprache für die Front-End-Entwicklung? Wie verwende ich die Go-Sprache für die Front-End-Entwicklung? Jun 10, 2023 pm 05:00 PM

Mit der Entwicklung der Internet-Technologie hat die Front-End-Entwicklung immer mehr an Bedeutung gewonnen. Insbesondere die Popularität mobiler Geräte erfordert eine Front-End-Entwicklungstechnologie, die effizient, stabil, sicher und einfach zu warten ist. Als sich schnell entwickelnde Programmiersprache wird die Go-Sprache von immer mehr Entwicklern verwendet. Ist es also möglich, die Go-Sprache für die Front-End-Entwicklung zu verwenden? Als Nächstes wird in diesem Artikel ausführlich erläutert, wie die Go-Sprache für die Front-End-Entwicklung verwendet wird. Werfen wir zunächst einen Blick darauf, warum die Go-Sprache für die Front-End-Entwicklung verwendet wird. Viele Leute denken, dass die Go-Sprache eine ist

Ist Django Front-End oder Back-End? Hör zu! Ist Django Front-End oder Back-End? Hör zu! Jan 19, 2024 am 08:37 AM

Django ist ein in Python geschriebenes Webanwendungs-Framework, das Wert auf schnelle Entwicklung und saubere Methoden legt. Obwohl Django ein Web-Framework ist, müssen Sie zur Beantwortung der Frage, ob Django ein Front-End oder ein Back-End ist, ein tiefes Verständnis der Konzepte von Front-End und Back-End haben. Das Front-End bezieht sich auf die Schnittstelle, mit der Benutzer direkt interagieren, und das Back-End bezieht sich auf serverseitige Programme. Sie interagieren mit Daten über das HTTP-Protokoll. Wenn das Front-End und das Back-End getrennt sind, können die Front-End- und Back-End-Programme unabhängig voneinander entwickelt werden, um Geschäftslogik bzw. interaktive Effekte sowie den Datenaustausch zu implementieren.

Kann Golang als Frontend verwendet werden? Kann Golang als Frontend verwendet werden? Jun 06, 2023 am 09:19 AM

Golang kann als Front-End verwendet werden. Golang ist eine sehr vielseitige Programmiersprache, mit der verschiedene Arten von Anwendungen entwickelt werden können, einschließlich Front-End-Anwendungen Eine Reihe von Problemen, die durch Sprachen wie JavaScript verursacht werden. Zum Beispiel Probleme wie schlechte Typsicherheit, geringe Leistung und schwierig zu wartender Code.

Erfahrungsaustausch in der C#-Entwicklung: Fähigkeiten zur kollaborativen Front-End- und Back-End-Entwicklung Erfahrungsaustausch in der C#-Entwicklung: Fähigkeiten zur kollaborativen Front-End- und Back-End-Entwicklung Nov 23, 2023 am 10:13 AM

Als C#-Entwickler umfasst unsere Entwicklungsarbeit in der Regel die Front-End- und Back-End-Entwicklung. Mit der Weiterentwicklung der Technologie und der zunehmenden Komplexität von Projekten wird die gemeinsame Entwicklung von Front-End und Back-End immer wichtiger und komplexer. In diesem Artikel werden einige kollaborative Front-End- und Back-End-Entwicklungstechniken vorgestellt, um C#-Entwicklern dabei zu helfen, die Entwicklungsarbeit effizienter abzuschließen. Nach der Festlegung der Schnittstellenspezifikationen ist die gemeinsame Entwicklung von Front-End und Backend untrennbar mit dem Zusammenspiel der API-Schnittstellen verbunden. Um den reibungslosen Ablauf der kollaborativen Front-End- und Back-End-Entwicklung sicherzustellen, ist es am wichtigsten, gute Schnittstellenspezifikationen zu definieren. Bei der Schnittstellenspezifikation handelt es sich um den Namen der Schnittstelle

Was ist ein modulares Front-End-ESM? Was ist ein modulares Front-End-ESM? Feb 25, 2024 am 11:48 AM

Was ist Front-End-ESM? Spezifische Codebeispiele sind erforderlich. Bei der Front-End-Entwicklung bezieht sich ESM auf ECMAScriptModules, eine modulare Entwicklungsmethode, die auf der ECMAScript-Spezifikation basiert. ESM bietet viele Vorteile, wie z. B. eine bessere Codeorganisation, Isolierung zwischen Modulen und Wiederverwendbarkeit. In diesem Artikel werden die grundlegenden Konzepte und die Verwendung von ESM vorgestellt und einige spezifische Codebeispiele bereitgestellt. Das Grundkonzept von ESM In ESM können wir den Code in mehrere Module unterteilen, und jedes Modul stellt einige Schnittstellen für andere Module bereit

So implementieren Sie Instant Messaging im Frontend So implementieren Sie Instant Messaging im Frontend Oct 09, 2023 pm 02:47 PM

Zu den Methoden zur Implementierung von Instant Messaging gehören WebSocket, Long Polling, vom Server gesendete Ereignisse, WebRTC usw. Detaillierte Einführung: 1. WebSocket, das eine dauerhafte Verbindung zwischen dem Client und dem Server herstellen kann, um eine bidirektionale Kommunikation in Echtzeit zu erreichen. Das Front-End kann die WebSocket-API verwenden, um eine WebSocket-Verbindung herzustellen und Instant Messaging durch Senden und Empfangen zu erreichen 2. Long Polling, eine Technologie, die Echtzeitkommunikation usw. simuliert.

See all articles