0 Tage Serie
javascript / intermediate
Snippet

Effiziente Eigenschafts-Initialisierung mit Nullish Assignment

Der Nullish Coalescing Assignment Operator (??=) weist nur dann einen Wert zu, wenn die Variable null oder undefined ist, was sicherer ist als die Verwendung von || für falsche Werte wie 0 oder leere Strings.

snippet.js
javascript
1
2
3
4
5
6
7
8
9
10
function setupConfig(options) {
options.timeout ??= 3000;
options.retries ??= 5;
options.debug ??= false;
return options;
}
// Example: setupConfig({ timeout: 0 })
// timeout remains 0 because it's not null or undefined.
Erklärung
1
options.timeout ??= 3000;
Weist 3000 nur zu, wenn timeout 'nullish' (null oder undefined) ist.
2
// timeout remains 0
Zeigt, dass 'falsy', aber gültige Werte (wie 0) erhalten bleiben.