Bedingtes Einfügen von Mitgliedern in JavaScript-Objekte: Eine moderne Lösung
Während der traditionelle Ansatz des bedingten Hinzufügens von Mitgliedern zu einem Objekt mithilfe von if-Anweisungen ist unkompliziert, es kann unidiomatisch und ausführlich sein. Eine elegantere Lösung besteht darin, den bedingten ternären Operator ?: innerhalb des Objektliterals zu nutzen. Dieser Ansatz führt jedoch zu undefinierten Mitgliedswerten, wenn die Bedingung „falsch“ ergibt.
Um dieses Problem zu lösen, besteht eine robustere Lösung darin, den Spread-Operator (...) in Verbindung mit der logischen UND-Kurzschlussauswertung zu verwenden . Diese Technik ermöglicht die bedingte Einbeziehung mehrerer Mitglieder in einen einzelnen Ausdruck:
const a = { ...(someCondition1 && {b: 5}), ...(someCondition2 && {c: 6}), ...(someCondition3 && {d: 7}), // ... and so on };
In diesem Szenario erweitert der Spread-Operator die Objektliterale in einzelne Eigenschaften innerhalb des umschließenden Objekts a. Der logische UND-Operator && stellt sicher, dass jede Eigenschaft nur dann einbezogen wird, wenn ihre entsprechende Bedingung als wahr ausgewertet wird.
Dieser Ansatz vermeidet undefinierte Eigenschaftswerte, indem falsche Bedingungen durch die Kurzschlussauswertung auf undefiniert gesetzt werden. Infolgedessen enthält das resultierende Objekt nur Eigenschaften, die den erfüllten Bedingungen entsprechen.
Das obige ist der detaillierte Inhalt vonWie kann ich auf elegante Weise Mitglieder bedingt zu JavaScript-Objekten hinzufügen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!