Beim Erstellen eines Objekts in JavaScript oder TypeScript ist es üblich, Eigenschaften bedingt hinzuzufügen, basierend auf der Auswertung von Ausdrücken. Dies erfolgt normalerweise mithilfe des Spread-Operators (...) in Kombination mit logischen Bedingungen.
const condition = (a, b) → a › b; const obj = { a: 1, b: 2, ... (false && {c: 3}), ... (true && {d: 4}), ... (condition (1, 2) && {e: 5}), }; console.log(obj); // output: { a: 1, b: 2, d: 4 }
false && {c: 3}: Dies wird als falsch ausgewertet, was bedeutet, dass das {c: 3}-Objekt nicht in obj verteilt wird.
true && {d: 4}: Da die Bedingung wahr ist, wird {d: 4} in obj verteilt.
condition(1, 2) && {e: 5}: Die Bedingungsfunktion wertet aus, ob a > b. Da 1 > 2 falsch ist, wird das Objekt {e: 5} nicht gespreizt.
Diese Technik ist eine leistungsstarke Möglichkeit, Ihre Objektdefinition sauber und prägnant zu halten und gleichzeitig Eigenschaften basierend auf verschiedenen Bedingungen dynamisch hinzuzufügen.
Das endgültige Objekt sieht so aus:
{ a: 1, b: 2, d: 4 }
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3