Значение параметра PowerShell по умолчанию не работает должным образом

#Requires -Version 2.0

[CmdletBinding()]
Param(
  [Parameter()] [string] $MyParam = $null
)

if($MyParam -eq $null) {
  Write-Host 'works'
} else {
  Write-Host 'does not work'
}

Вывод "не работает" => выглядит как строки неявно преобразуются из пустой строки в пустую? Зачем? И как проверить, является ли строка пустой или действительно $ null? Это должно быть два разных значения!

Ответы на вопрос(5)

Ваш ответ на вопрос