変数がnullかどうか調べる

配列に-eq -ne 演算子を行うと、個々の要素に演算子を適用して、
trueと判定された要素の配列を返す。(真偽値ではなく配列を返す。)

PS > 1,2,3 -eq 3
配列 @(3) を返す

そして、以下のような配列は、偽と判定される。

  • @()
  • ,$false
  • ,0
  • ,""
  • ,$null
  • ,@()

よって、ある変数が厳密にnullだと判定するには、

if ($x -eq $null) { ... }

では不十分で、

if (-not ($x -is [Object])) { ... }

としなければならない。