/ / JS foreach Objekt als Option Konstruktion

JS foreach Objekt als Varianten Design

Die JavaScript-Syntax bietet die Möglichkeit, Variablen zu Arrays und Objekten zu kombinieren. Auf Elemente kann über Indizes und Namen durch Schleifenoperatoren zugegriffen werden.

Es ist jedoch nicht immer möglich, die Anzahl der Elemente in der Sammlung in der Entwurfsphase zu kennen, und es ist nicht immer praktisch, die Syntax der Sprache innerhalb der Grenzen der von ihr vorgesehenen Semantik zu verwenden.

Klassische Designs

Der übliche Schleifenoperator "für (var i = 0; i <aData.Länge; i ++) {...} "bietet Zugriff auf jedes Element des Arrays durch den Index" i "-" aData [i] ", und dies ist praktisch, wenn die Anzahl der Elemente im Voraus bekannt ist. Ein ähnlicher Effekt wird durch die Konstruktion gegeben:

var i = 0;
while (Typ von aData [i]! = "undefined") {... aData [i]; ... ich ++; },

wenn die Anzahl der Elemente unbekannt ist.

Js foreach

Sie können auch andere Algorithmen zum Füllen und Verarbeiten von Arrays erstellen, aber es ist viel bequemer, neue, moderne Varianten zu verwenden.

Classic ist gut, wenn Sie Profile verarbeiten müssender Personalabteilung (Name, Name, Vatersnamen, Position), Ausrüstungskarten (Modell, Hersteller, Verkäufer, Verkaufsdatum) und andere Daten, die sich strukturell nicht ändern und von gesamtem Interesse sind.

Wenn ein Array-Element selbst ein Objekt oder eine Struktur ist, über eigene Eigenschaften und Methoden verfügt, kommt der Klassiker nicht mit der Dynamik von Quantität und Qualität zurecht, und das Array erhält eine andere Bedeutung.

Zyklen für jedes Element

In der Dynamik ist wesentliche Manifestationein Array von Eigenschaften des aktuellen Elements. Die Konstruktion des JS foreach-Arrays, in einer etwas anderen Version als die üblichen (in anderen Sprachen akzeptiert), erlaubt es dem Array, seine Eigenschaften durch sein aktuelles Element zu manifestieren.

Angenommen, ein Array enthält Straßen (ihrequalitative und quantitative Eigenschaften), und eine andere Anordnung - Autos, die nur auf bestimmten Straßen fahren können und Kraftstofftanks unterschiedlicher Größe haben, dh die Abstände zwischen der Betankung sind auch wichtig.

In dieser Ausführungsform sollte ein zweckmäßiger Algorithmus seinZum Beispiel, nehmen Sie die Straße als Basis und wählen Sie Autos, die durchfahren können. Und es ist besser, wenn die Straße und das Auto, die im Programm als Objekte sprechen, "sich selbst finden". Diese natürliche Anwendung der objektorientierten Programmierung, die unter anderem nicht dazu führt, dass der Algorithmus beim Wechseln der Sammlungen von Straßen und Autos geändert werden muss, berücksichtigt automatisch Straßen in Reparatur, Autos für Wartung usw.

JS foreach-Array

Technisch sieht die Konstruktion auf JS foreach sehr einfach aus: "aData.forEach (fData);", wobei fData eine Funktion ist, die auf jedes Element des aData-Arrays angewendet wird:

Funktion fData (Wert, Index) {sText + = Index + "=" + Wert + ";"; }.

Wenn die Quelldaten wie folgt dargestellt werden:

var aData = [1,2,3,4];
aData.push (11);
aData.push (22);
aData.push (44);
aData.push ("Zeile 1");
aData.push ("Zeile 2");

var sText = "",

dann wird das Ergebnis dieser Anwendung von JS foreach sein:

"0 = 1; 1 = 2; 2 = 3; 3 = 4; 4 = 11; 5 = 22; 6 = 44; 7 = Linie 1; 8 = Linie 2;".

Eigenschaften von Arrays mit Objekten

Das JavaScript-Objekt ist speziell. Die Verwendung von Objekten in dieser Sprache unterscheidet sich erheblich von Implementierungen in anderen Sprachen. Ein Objekt ist selbst ein Array von Eigenschaften und Methoden. Gleichzeitig führen letztere Aktionen durch, speichern oder editieren ihre eigenen oder externen Inhalte anderer Objekte, Arrays, Variablen.

Objekte, die wie Bilder auf einem Filmstreifen in ein Array übergehen, bilden beim Durchlaufen eines JS foreach-Objektkonstrukts eine neue Semantik: ein Konstrukt mit veränderbarer Bedeutung.

Also, die Straßen selbst bekommen die MöglichkeitWähle Autos, die auf ihnen fahren können, und letztere filtern die verfügbaren Routen an ihrem Tag. Wenn Sie nicht darauf achten, dass Redundanz bei dieser Art von Programmierung die Zuverlässigkeit des Codes erhöht, dann macht die Aufgabe - den Weg der Frachtlieferung zu bestimmen - die semantische und einfache Lösung: Strecken Sie die Routen entlang der Straßen aus, wählen Sie Fahrzeuge aus und liefern Sie die Waren.

Js foreach Objekt

Wenn Routen, Straßen und Autos Arrays sindObjekte, der Algorithmus ist stark vereinfacht. Es wäre seltsam, dass das Erscheinen des JS foreach-Konstrukts so lange dauerte. Trotz der geschriebenen Einfachheit ist es jedoch in der Praxis ziemlich schwierig, sie zu implementieren.

JS Foreach Praxis und reale Objekte

Das Denken eines modernen Entwicklers arbeitet mit Objekten, die der Programmierung vertraut sind, aber keinesfalls Objekte einer realen Aufgabe. Es ist nicht üblich, Straße, Auto, Route, Entfernung zu meinen ...

Die objektorientierte Programmierung hat sich durch dornige Pfade entwickelt, und es ist üblich geworden, Programmobjekte zu erzeugen: ein Array, ein Formular, eine Schaltfläche, ein Routenauswahlfenster und so weiter.

Darüber hinaus ist JS foreach auf Augenhöhe mit anderenSprachkonstrukte werden im Browser des Besuchers ausgeführt, was in der Praxis zu ernsthaften Einschränkungen führt. Nicht jeder Entwickler ist bereit, seinen Code freizugeben. Effektive Beispiele für die Verwendung von Arrays und Sammlungen realer Objekte sind eine gute Möglichkeit, das Wissen zu verbessern.

Allerdings die Verfügbarkeit von JavaScript-Code fürUnvorhergesehene Nutzung durch den Entwickler wirkt sich indirekt auf die Entwicklung vielversprechender Ideen zur Schaffung dynamischer und realer Objekte aus. Die Konstruktionen von JS foreach sind noch nicht perfekt, und die Entwicklung ihrer Semantik scheint eine sehr vielversprechende Richtung zu sein.

In Verbindung stehende Nachrichten


Kommentare (0)

Fügen Sie einen Kommentar hinzu