Heim > Web-Frontend > js-Tutorial > Hauptteil

Erklären Sie, als wäre ich Ihr Junior: Warum? Gut?

Mary-Kate Olsen
Freigeben: 2024-11-03 11:03:02
Original
340 Leute haben es durchsucht

Ich schreibe zu diesem Zeitpunkt schon fast zwei Jahrzehnte lang JS, aber ich kann immer noch nicht verstehen, warum? ist nicht der Anfang eines Anti-Musters, insbesondere für Methodenaufrufe.

Ich habe den Beitrag gesehen

Und einer, der mir ins Auge fiel, war Nummer 2 „Optionale Verkettung mit Funktionsaufrufen“:

const user = {
getName: () => 'Alice',
};
console.log(user.getName?.());   // Alice
console.log(user.getAge?.());    // undefined
Nach dem Login kopieren

Was schreit: „Ich kenne die Schnittstelle zu meinen Objekten nicht und es ist mir egal.“

Sie sollten sich auf jeden Fall um die Schnittstelle zu Ihren Objekten kümmern.

Ich sehe fast ein Argument für Robustheit, wenn sich eine Bibliotheks-API ändert, aber nein, wenn Sie eine Bibliothek verwenden, kennen Sie die Schnittstelle zu den Objekten, korrigieren Sie Ihren Code.

Es scheint einfach ein gewaltiger Insektenattraktor zu sein.

Sie möchten nie, dass etwas undefiniert ist. Oder habe ich ein Memo dazu verpasst?

Und das gilt gleich doppelt für Methoden. Wenn zwei Objekte nicht das gleiche Verhalten aufweisen, müssen sie als unterschiedliche Typen behandelt werden und nicht nur mit den Schultern zucken und sagen: „Es wird alles gut.“

Ist das Testen auf Null heutzutage illegal? Ich weiß, dass Null als Milliarden-Dollar-Fehler bezeichnet wurde, aber das wird durch einen Optionstyp (wie Maybe in Haskell) gelöst, nicht durch das, was wie das Gegenteil aussieht.

Ein Optionstyp weist Sie darauf hin, dass dies etwas sein könnte, das null sein könnte. Gehen Sie also vorsichtig vor. Es verbirgt die Tatsache nicht, etwa ?. tut.

Trotz alledem bin ich froh, dass ich mich nicht mit der Vorstellung auseinandersetzen kann, dass ?. ist nur ein Fehler, wenn es darum geht, auf Null zu prüfen, oder es ist einfach nur ein schlechtes Design, wenn es um Undefiniert geht.

Was ist ein gutes Muster, d. h. eines, das Fehler reduziert, das Sie verwenden können?.?

Das obige ist der detaillierte Inhalt vonErklären Sie, als wäre ich Ihr Junior: Warum? Gut?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage