Detaillierte Einführung in die Grundkonzepte von JS

Detaillierte Einführung in die Grundkonzepte von JS

Viele Leute übersehen die theoretischen Aspekte von Javascript , bevor sie sich Javascript vertiefen. Diese Konzepte helfen uns, die unterschiedlichen Pfade und Muster zu verstehen, die wir beim Erstellen Javascript Anwendungen verfolgen. Diese Muster sind in jedem Framework in JS Land vorhanden, daher ist es sinnvoll, diese Konzepte zu verstehen, bevor man die Sprache selbst lernt.

1. Eigenschaften von JS

1.1 Multiparadigma

Javascript unterstützt prozedurale, objektorientierte und ereignisgesteuerte funktionale Programmierung! Die Beherrschung des objektorientierten Programmierstils JS ist sehr nützlich.

Objektorientierte Programmierung hilft Programmierern, die Komponenten einer Softwareanwendung einfacher zu visualisieren. Darüber hinaus können Programmierer durch das Erlernen Typescript (Javascript mit Typen) die besten Designmuster der Branche problemlos implementieren. Diese Entwurfsmuster werden verwendet, um die häufigsten Probleme bei der Softwareprogrammierung auf möglichst effiziente Weise zu lösen.

Diese Vielseitigkeit macht Javascript sehr zugänglich und dennoch sehr leistungsstark.

1.2 Erläuterung

Der Unterschied zu C/C++ besteht darin, dass Javascript das Programm nicht auf einmal liest, sondern zeilenweise interpretiert. Dies bedeutet, dass JS langsamer ist als kompilierte Sprachen wie C/C++ .

Warnung: Javascript ist dafür bekannt, zur Laufzeit eine äußerst reaktive Sprache zu sein, was die Fehlerbehebung sehr schwierig macht.

Aber mit der Zeit und etwas Übung werden Sie lernen, reibungslos zu laufen. Der häufigste Fehler besteht darin, dass Ihre Variablen NULL -Werte zurückgeben. Wenn derartige Probleme auftreten, gehen Sie zu Stack Overflow , denn ich verspreche Ihnen, dass Sie, egal wie schwerwiegend der Fehler ist, nicht die erste Person sind, die damit konfrontiert wird. Es ist auch eine gute Idee, console.log() bei der Entwicklung Ihres Projekts großzügig zu verwenden. Auf diese Weise können Sie den genauen Zeitpunkt im Lebenszyklus Ihres Programms bestimmen, an dem Ihre Variablen möglicherweise ausgefallen sind.

1.3 Einzelthread

Javascript kann immer nur eine Aufgabe gleichzeitig ausführen. Es reiht unterschiedliche Aufgaben je nach Typ in unterschiedliche Warteschlangen ein.
Im abstraktesten Sinne gruppiert Javascript im Wesentlichen synchrone und asynchrone Aufgaben und stellt sie separat in die Warteschlange.

Synchrone Tasks sind Anweisungen, die verarbeitet werden, sobald sie auftreten, das heißt, sie werden sofort ausgeführt. Zu diesen Aufgaben gehören Protokollierungsanweisungen, Variablendeklarationen, Bedingungsprüfungen usw.

Bei asynchronen Aufgaben handelt es sich um Aufgaben, deren Ausgabe unterschiedlich lange dauern kann. Ein Beispiel für eine asynchrone Aufgabe könnte das Anfordern von Informationen von Web API sein.

Darüber hinaus verfügt Javascript über eine Job Queue , die JS Feature namens „ Promises verarbeitet.

Sie können die Single-Thread-Natur von Javascript tatsächlich sehen, indem Sie mit der rechten Maustaste auf diese Webseite klicken und dann auf die Registerkarte „Untersuchen“ klicken. Wechseln Sie als Nächstes zur Registerkarte „Konsole“ im Fenster, das Sie gerade geöffnet haben. Geben Sie den folgenden Code ein und drücken Sie die Eingabetaste. \

während(wahr) {}


Sie können jetzt feststellen, dass diese Seite überhaupt nicht reagiert. Dies liegt daran, dass Javascript auf dieser Seite jetzt damit beschäftigt ist, die unendliche While-Schleife auszuführen, die wir oben ausgeführt haben.

1.4 Nicht blockierend

Wir haben asynchrone Aufgaben bereits besprochen. Da JS in einer Single-Thread-Umgebung ausgeführt wird, wartet es standardmäßig nicht!

Asynchrone Codeblöcke werden erst ausgeführt, nachdem die Ausführung aller synchronen Codeblöcke abgeschlossen ist, unabhängig von der Position des Codes im Programm.

console.log("Ich bin die erste Anweisung")

setzeTimeout(()=> {
console.log("Ich bin die zweite Anweisung")
},1000)

console.log("Ich bin die dritte Anweisung")

Hier protokolliert console.log() die Anweisungen in der Konsole und setTimeout() führt die zweite Anweisung nach einer Sekunde aus.

Beim Überprüfen der Ausgabe

Ich bin die erste Aussage. Ich bin die dritte Aussage. Ich bin die zweite Aussage.

Wir können sehen, dass die dritte Anweisung vor der zweiten Anweisung protokolliert wird. Dies liegt an der inhärenten Art und Weise, wie JS synchrone und asynchrone Codeblöcke verarbeitet.

1.5 Erweitert

JavaScript ist eine höhere Programmiersprache. Höherstufige Sprachen können lediglich bedeuten, dass sie den von Menschen gesprochenen Sprachen näher kommen. Höherstufige Sprachen bieten mehr Funktionen, die es Programmierern ermöglichen, besser auszudrücken, was sie erstellen möchten.

Diese fortschrittliche Natur von Javascript trägt dazu bei, dass es den clientseitigen Teil Web optimal unterstützt. Eine der größten Einschränkungen von JS in der Vergangenheit bestand darin, dass es nur auf der Clientseite ausgeführt werden konnte und keine Dateimanipulationen wie die meisten serverseitigen Sprachen ermöglichte.

Dies hat sich jedoch NodeJS geändert, wodurch Entwickler Backend-Server mit Javascript erstellen können. Daher können Softwareentwickler mit nur einer Sprache sowohl auf der Server- als auch auf der Clientseite arbeiten. Dies hat zum Aufstieg der Full-Stack-Ingenieure geführt.

1.6 Dynamische Typisierung

Javascript ist auch eine dynamisch typisierte Sprache. Dies bedeutet, dass wir im Gegensatz zu C , wo wir einen Datentyp für eine Variable angeben müssen, in Javascript type-inference verwenden können, um den Typ der in einer Variablen enthaltenen Daten automatisch zu erkennen. \

// In C müssen Variablen einen Datentyp haben. Um den Datentyp von einem Typ in einen anderen zu ändern, müssen wir die Typkonvertierung int a = 5 verwenden.
Zeichen b = "a";
Gleitkomma c = 7,036;


In Javascript verwenden wir let und const , um Variablen bzw. Konstanten zu deklarieren. \

sei a = 5
console.log(a) // 5
a = 'Hallo Welt'
console.log(a) // Hallo Welt

const b = 'JS ist cool' 
console.log(b) // JS ist cool b = 'Ich habe meine Meinung geändert'
console.log(b) // Fehler: const kann nicht geändert werden

Obwohl die Typinferenz aufgrund ihrer einfachen Handhabung ein Pluspunkt zu sein scheint, wird sie bei größeren Projekten, bei denen Typensicherheit eine Rolle spielt, sofort zum Nachteil.

Aus diesem Grund verwenden größere Projekte TypeScript , das lediglich ein Wrapper um Javascript ist, der Typen, Schnittstellen und verschiedene andere Funktionen bereitstellt.

2. Lernstrategien

Es hat eine Weile gedauert, bis ich mich in JS Land eingelebt habe, aber ich habe eine einfache Checkliste mit Minimum Requirements zum Erlernen eines Frameworks wie Express oder ReactJS .

Erstens: Überstürzen Sie nichts beim Erlernen dieser Frameworks. Sie müssen einige Zeit damit verbringen, Vanilla Javascript zu beherrschen.

3. Grundkenntnisse

  • Variablen und Konstanten
  • Bedingte Blöcke ( if-else )
  • Schleifen ( for , while , forEach )
  • Switch Case
  • Functions

Fortgeschrittenenbereich (Mindestanforderung)

  • Asynchron/Warten
  • Promises
  • Kurse in Javascript
  • Rest / Spread -Syntax
  • Array-/Objekt-Iteratoren
  • Array-Destrukturierung
  • Module (Import, Export)

Lernen Sie beim Erstellen Ihrer Projekte weiter, und schon bald werden Sie die Sprache gut beherrschen.

Dies ist das Ende dieses Artikels zur ausführlichen Einführung in die grundlegenden Konzepte von JS. Weitere relevante grundlegende Konzepte von JS finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den verwandten Artikeln weiter unten. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Detaillierte Erklärung der JavaScript-Ereigniskonzepte (Unterscheidung zwischen statischer und dynamischer Registrierung)
  • Das Konzept und die Verwendung der Bereichskette in JavaScript
  • Zusammenfassung der grundlegenden Kenntnisse und Konzepte der objektorientierten JavaScript-Architektur
  • Das Konzept des Prozesses in node.js und das Anwendungsbeispiel des child_process-Moduls
  • Analyse des Konzepts und der Verwendung von Closures in JavaScript

<<:  Dockerfile-Implementierungscode beim Starten von zwei Prozessen in einem Docker-Container

>>:  Detailliertes Tutorial zur Registrierung und Aktivierung von Navicat für MySQL 15

Artikel empfehlen

Einführung und Installation von MySQL Shell

Inhaltsverzeichnis 01 ReplicaSet-Architektur 02 E...

Analyse des Prinzips und der Verwendung der kontinuierlichen MySQL-Aggregation

Dieser Artikel veranschaulicht anhand von Beispie...

CSS3-Übergang zum Erreichen des unterstrichenen Beispielcodes

In diesem Artikel wird der Beispielcode für den C...

HTML-Tutorial: Sammlung häufig verwendeter HTML-Tags (5)

Diese eingeführten HTML-Tags entsprechen nicht un...

Lösung für den Überlauf der HTML-Tabelle

Wenn die Tabelle breit ist, kann es zu einem Über...

js, um einen einfachen Lupeneffekt zu erzielen

In diesem Artikel wird der spezifische Code von j...

Eine kurze Diskussion über die Definition und Vorsichtsmaßnahmen von H-Tags

Den Ergebnissen zufolge gibt es für die Definitio...

Einfaches Docker Swarm-Tutorial

Schwarm drei virtuelle Maschinen 132,133,134 1. I...

JS realisiert Video-Sperreffekt

Verwenden Sie um dies zu erreichen, die modulare ...

So überprüfen Sie die Version des Kali Linux-Systems

1. Überprüfen Sie die Kali-Linux-Systemversion Be...

TimePicker im Element deaktiviert einen Teil der Zeit (deaktiviert auf Minuten)

Die Projektanforderungen lauten: Datum und Uhrzei...

Bringen Sie Ihnen bei, wie Sie den Beobachtermodus in Javascript implementieren

Inhaltsverzeichnis Was ist das Beobachtermuster? ...

Eine kurze Erläuterung zum Anpassen der Hostdatei in Docker

Inhaltsverzeichnis 1. Befehl 2. docker-compose.ym...