Я только что начал создавать скрипты PowerShell, и я столкнулся с проблемой тестирования переменных для значения. Я пытаюсь запустить все с включенными предупреждениями, особенно во время обучения, чтобы уловить глупые ошибки. Итак, я использую CTPV3 и устанавливаю строгий режим с помощью "set-strictmode -version latest". Но я столкнулся с дорожным блоком, проверяя входящие переменные на значение. Эти переменные могут быть или не быть уже установлены.
# all FAIL if $var is undefined under "Set-StrictMode -version latest"
if ( !$var ) { $var = "new-value"; }
if ( $var -eq $null ) { $var = "new-value"; }
Я не могу найти способ проверить, имеет ли переменная значение, которое не вызывает предупреждения, когда переменная отсутствует, если я не отключу строгий режим. И я не хочу включать и выключать строгий режим, чтобы проверить переменные. Я уверен, что я забуду вернуть его где-нибудь, и это выглядит ужасно загроможденным. Это не так. Что мне не хватает?