Heim > Artikel > Web-Frontend > Optionale Verkettung und Nullish Coalescing
Angenommen, Sie haben ein Objekt, das einen Benutzer darstellt, und Sie möchten auf seine Adresse zugreifen.
In der Vergangenheit haben Sie vielleicht so etwas getan:
const user = { name: "Alice", address: { street: "123 Main St" } }; const street = user.address && user.address.street; console.log('Street: ', street); // Output: 123 Main St
Aber was passiert, wenn das Benutzerobjekt keine Adresseigenschaft oder das Adressobjekt keine Straßeneigenschaft hat?
Sie erhalten eine Fehlermeldung!
Mit diesem Operator (?.) können Sie sicher auf verschachtelte Eigenschaften zugreifen und undefiniert zurückgeben, wenn ein Teil der Kette fehlt.
Zum Beispiel:
const user = { name: "Bob" }; const street = user.address?.street; console.log('Street: ', street); // Output: undefined
Sehen Sie, wie viel klarer und prägnant der Code ist?
Der Standardwertverteidiger.
Stellen wir uns nun vor, Sie möchten einer Variablen einen Standardwert zuweisen, wenn diese null oder undefiniert ist. Herkömmlicherweise verwenden Sie möglicherweise den ODER-Operator (||). Dies kann jedoch zu unerwartetem Verhalten führen, wenn die Variable einen „falschen“ Wert wie 0 oder eine leere Zeichenfolge enthält.
Warum es nützlich ist:
let userSettings = null; // Imagine this comes from an API or user input // Without nullish coalescing: let theme = userSettings !== null && userSettings !== undefined ? userSettings.theme : 'light'; // With nullish coalescing: let theme = userSettings?.theme ?? 'light'; // If userSettings.theme is null or undefined, 'light' is used
Es ist besonders praktisch, wenn es um optionale Eigenschaften oder möglicherweise fehlende Daten geht.
Optionale Verkettung und Nullish-Koaleszenz helfen Ihnen, besser lesbaren, robusteren und fehlerresistenteren Code zu schreiben.
Das obige ist der detaillierte Inhalt vonOptionale Verkettung und Nullish Coalescing. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!