JavaScript: Verwenden Sie Const-Objekte anstelle von Switch-Anweisungen
Als JavaScript-Entwickler kennen wir alle die Leistungsfähigkeit der switch-Anweisung. Es handelt sich um eine klassische Kontrollstruktur, die es schon seit Jahrzehnten gibt und die in vielen Programmiersprachen verwendet wird.
Doch in den letzten Jahren erfreut sich die objektorientierte Programmierung in JavaScript immer größerer Beliebtheit und viele Entwickler suchen nun nach Alternativen zur switch-Anweisung.
Objekte sind eine gute Wahl, wenn es darum geht, Switch-Anweisungen zu ersetzen. Sie bieten eine einfache, elegante Lösung für ein komplexes Problem. Mit Objekten können Sie ganz einfach die verschiedenen Pfade definieren, die ein Programm je nach Eingabe einschlagen soll, ohne eine Reihe von if-else-Anweisungen schreiben zu müssen.
Bedingungsanweisung mit Switch schreiben
Das Switch-Gehäuse ist etwas schwer zu lesen und etwas alt, und es ist anfällig für Debugging-Probleme.
const handleSuccess = () => { /* do stuff */ }
const handleFailure = () => { /* do stuff */ }
const handlePending = () => { /* do stuff */ }
switch(status) {
case 'success':
return handleSuccess();
case 'failed':
return handleFailure();
case 'pending':
return handlePending();
default:
throw Error('status not recognized');
}
Mithilfe eines Handlerobjekts können in JavaScript Objekte anstelle von Switch-Anweisungen verwendet werden
const handleSuccess = () => { /* do stuff */
const handleFailure = () => { /* do stuff */ }
const handlePending = () => { /* do stuff */ }
const handler = handlers[status];
if (!handler) throw Error('Status not recognized');
return handler();
Insgesamt bieten Objekte eine viel effizientere Möglichkeit, komplexe Logik zu verarbeiten als Switch-Anweisungen. Sie sind leicht zu warten und zu ändern, da die gesamte Logik im Objekt selbst enthalten ist. Außerdem sind sie besser lesbar und leichter zu verstehen. Wenn Sie also nach einer Alternative zu Switch- Anweisungen suchen, ist die Verwendung von Objekten auf jeden Fall eine Überlegung wert.

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































