PowerShell 7: Null Coalescing Operator ??

Der Dotnet-Doktor  –  1 Kommentare

Der neue PowerShell-Operator ?? liefert den Wert des vo­rangestellten Ausdrucks, wenn dieser nicht $null ist.

Der "Null Coalescing Operator" ??, den es in C# schon seit 2005, in PowerShell aber erst ab Version 7.0 gibt, liefert den Wert des vo­rangestellten Ausdrucks, wenn dieser nicht $null ist. Wenn der Wert $null ist, wird der Wert des nachfolgenden Ausdrucks übergeben. Somit kann man auf elegante Weise den Null-Fall in einen anderen Wert umwandeln:

$name = $name ?? "n/a"

In PowerShell 1.0 bis 6.2 musste man länger schreiben:

if ($name -eq $null) { $name = "n/a"}