dedlfix: String in Array konvertieren

Beitrag lesen

Tach!

Variante 2 meldet sich gleich beim Programmieren.

Eben nicht …

Dann korrigiert man seinen Fehler und anschließend läuft sie problemlos.

… die realen Daten kommen, wenn die Programmierung abgeschlossen ist. Und sie kommen von woanders, von jemand anderem, der sich völlig zurecht denkt: wozu sollte man eine Telefonnummer als Liste von Telefonnummern notieren?

Wozu ein Label, ich hab doch ein Placeholder in meinem Input. Sowas ist eben zu kurz gedacht. Die realen Daten kommen nicht aus heiterem Himmel. Jemand muss die Anwendung, die diese Daten übergibt, programmieren. Und dabei fällt das Problem sofort auf, wenn man sich nicht an das festgelegte Datenformat hält. Dass zuerst der Client da wäre und dazu jemand einen Server schreibt und obendrein das Austauschformat nicht definiert ist, wäre eine ziemlich seltsame Konstellation.

Und wenn eine Person gar keine Telefonnummer hat bzw. keine bekannt ist, dann fehlt das Datum telephone eben ganz; da muss kein Datenmüll wie telephone: "" oder telephone: [] drinstehen. Die Software sollte so robust sein, mit nicht vorhandenen Daten umgehen zu können.

Und wenn mein Anwender denkt, dass zu den Telefonnummern noch Bemerkungen oder andere Metadaten angebracht wären, dann muss auch noch Objekt als Format zuverlässig erkannt werden, obwohl das auch nicht vereinbart ist? Wenn jedenfalls etwas optional ist, dann gibt es dafür eine Vereinbarung, dass es weggelassen werden kann.

In meinem Beispiel: if (subEvent.location && subEvent.location.telephone). Ist das zu aufwendig?

Es ist insgesamt auf beiden Seiten aufwendig die Fälle zu berücksichtigen. Der Sender muss ja auch eine Mechanik programmiert haben, der diese mit einem Default-Wert belegten Felder in seiner Datenstruktur rauskürzt. Warum sollte man sowas programmieren, wenn das Format an der Stelle nicht optional ist?

Gerade JavaScript sollte robust programmiert werden, damit ein Browser nicht bei einem Fehler aussteigt und gar das Rendern der Webseite abbricht.

Ja, wenn es um Kompatibilität zwischen Javascript und Browsergegebenheiten geht. Aber hier geht es um den Austausch von Daten nach einem vereinbartem Format.

Ich sehe nicht, dass es Vorteile auf beiden Seiten bringt

Scheuklappen ab‽

Keine überzeugenden Argumente deinerseits.

dedlfix.