Hallo,

Syntaktisch ist der Code fehlerfrei.

Die Ursache für das leere Array kann im Grunde zwei Ursachen haben:

  1. Der Block der for-Schleife wird niemals ausgeführt. Ich habe zwar keinerlei Kenntnis über die beiden von Dir verwendeten Variablen width und groesse, gehe aber mal stark davon aus, dass keiner der beiden Operanden negativ ist und das Ergebnis kleiner 0 ist.
  2. Du hast einfach vergessen, die Funktion Xcoordinate aufzurufen.

Eines verstehe ich dann aber doch nicht so ganz:

let value = i ;
XArray.push(value);

Wozu eine weitere Referenz auf die Variable i, wenn du das Array ohnehin um diesen Wert erweitern möchtest? Schreibe lieber folgendes:

XArray.push(i);

LG

...zur Antwort
Angular

Guten Tag,

Zuerst einmal muss ich sagen, dass ich von Vue keine Ahnung habe, das Framework daher nicht beurteilen kann.

Ich habe vor etwa anderthalb Jahren mit React begonnen. Der Funktionsumfang ist meiner Meinung nach recht überschaubar, was sich positiv auf die Lernkurve auswirkt. Konzepte wie der State, der Lifecycle und Hooks müssen verstanden werden. Hat man dieses Konzept aber einmal verinnerlicht und ist damit vertraut, macht die Entwicklung von Websites auf Basis von React Spaß. Ein weiterer wichtiger Bestandteil der React-Library ist für mich JSX sowie das Virtual-DOM. Ich persönlich habe es lieber, wenn ein Framework sämtliche Funktionalitäten (etwa einen HTTP-Client oder einen Router) von Haus aus mitbringt. Bei React muss man auf Libraries von Dritten setzen, etwa react-query für HTTP oder den React Router für das Routing. Aber React ist halt "nur" eine Library, kein umfangreiches Framework.

Vor ungefähr einem halben Jahr habe ich dann mit Angular begonnen. Das Konzept von Komponenten ist insofern kein anderes, als das von React. Jedoch gefällt mir die strikte Trennung von Template und Komponenten-Logik deutlich besser. Anstelle von JSX steht die Template-Syntax von Angular zur Verfügung, in der Interpolation, Direktiven, Bindings und Pipes zur Verfügung stehen. Besonders zu schätzen weiß ich die Strukturdirektiven wie ngIf oder ngFor, mit deren Hilfe Elemente konditional gerendert bzw. Elemente anhand eines Arrays erstellt und dynamisch "gefüllt" werden können. Auch muss zur Aktualisierung des Templates nicht der für die Komponente geltende State aktualisiert werden, wie es in React der Fall ist. Stattdessen reicht es aus, die in der Klasse definierte Eigenschaft zu ändern, was die Entwicklung sehr komfortabel macht. Die ChangeDetection von Angular sorgt dafür, dass die Anpassungen am Template durch eine solche Aktualisierung minimal gehalten wird. Reicht diese automatisch durchgeführte Detection nicht aus oder entspricht nicht den Anforderungen des Entwicklers, kann sie auch durch diesen beeinflusst werden. Angular hat als ausgereiftes Framework bereits alles an Board, was man sich für die Entwicklung moderner Single Page Applications nur wünschen kann: Einen HTTP-Client, einen Router, Module für Formulare und (komplexe) Animationen. Ich genieße einfach diesen Komfort bei der Entwicklung, ohne auf irgendwelche Libraries Dritter angewiesen zu sein.

Die Bundle-Size einer Angular Applikation ist im Regelfall größer als die einer React Applikation. In meinen Augen bringen diese im 2-stelligen KiB-Bereich liegenden Größenunterschiede aber kaum einen nennenswerten Nachteil, beachtet man die heutige Internetgeschwindigkeit.

Ich habe React schon lange nicht mehr angefasst. Dennoch ist es eine recht schlanke und hilfreiche Library, mit der komplexe Webanwendungen entwickelt werden können. Angular jedoch kommt meinen Anforderungen viel näher, weshalb ich in diesem Bereich nur noch mit Angular arbeite.

Letztendlich ist ein Vergleich zwischen Library und Framework nicht unbedingt sinnvoll. Die Modularisierung und das Gesamtkonzept von Angular-Applikationen haben mich allerdings überzeugt.

MfG Heinzfred

...zur Antwort
Weitere Inhalte können nur Nutzer sehen, die bei uns eingeloggt sind.