Heim >Web-Frontend >js-Tutorial >Wie vereinfachen optionale Verkettung und Nullish Coalescing den Zugriff auf Null-sichere Eigenschaften in JavaScript?

Wie vereinfachen optionale Verkettung und Nullish Coalescing den Zugriff auf Null-sichere Eigenschaften in JavaScript?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-09 11:39:11785Durchsuche

How Do Optional Chaining and Nullish Coalescing Simplify Null-Safe Property Access in JavaScript?

NULL-sicherer Eigenschaftszugriff und bedingte Zuweisung in EcmaScript 6

EcmaScript 6 bietet leistungsstarke Operatoren, um den Eigenschaftszugriff und die bedingte Zuweisung auf prägnante und effiziente Weise zu optimieren.

Bedingte Zuweisung

In älteren JavaScript-Versionen konnte die gewünschte Logik mithilfe von a erreicht werden try/catch-Block:

const query = succeed => (succeed ? { value: 4 } : undefined);

let value = 3;
for (let x of [true, false]) {
  try { value = query(x).value; } catch {} // Don´t assign if no .value
}
console.log(value); // Outputs: 4

Optionale Verkettung

Mit optionaler Verkettung kann diese Logik nun erheblich vereinfacht werden:

const query = succeed => (succeed ? { value: 4 } : undefined);

let value = 3;
for (let x of [true, false]) {
  value = query(x)?.value; // Assign only if `.value` exists
}
console.log(value); // Outputs: 4

Das ?. Der Operator prüft, ob query(x) ungleich Null und undefiniert ist, und greift erst dann auf die Value-Eigenschaft zu. Wenn query(x) null oder undefiniert ist, wird undefiniert zurückgegeben, ohne einen Fehler auszulösen.

Nullish Coalescing

Für nullfähige Werte kann der Nullish-Coalescing-Operator (??) verwendet werden:

const query = succeed => (succeed ? { value: 4 } : undefined);

let value = 3;
for (let x of [true, false]) {
  value ??= query(x).value; // Assign only if `value` is null or undefined
}
console.log(value); // Outputs: 4

Das ?? Der Operator vergleicht den linken Operanden mit null oder undefiniert und weist bei „true“ den rechten Operanden zu. In diesem Fall wird der Wert nur aktualisiert, wenn er ursprünglich null oder undefiniert war.

Beachten Sie, dass diese Operatoren in modernen Browsern unterstützt werden und aus Gründen der browserübergreifenden Kompatibilität mit Babel verwendet werden können.

Das obige ist der detaillierte Inhalt vonWie vereinfachen optionale Verkettung und Nullish Coalescing den Zugriff auf Null-sichere Eigenschaften in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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