Tuesday, May 11, 2010

Powershell function Weirdness

Be careful while invoking multiple functions in powershell.

PS > function retTrue () { return $true }
PS > function retFalse () { return $false }
PS > retTrue
True
PS > retFalse
False
PS > retTrue -and retFalse
True
PS > (retTrue) -and (retFalse)
False

PowerShell "Magic" Weirdness [Arrays]

PS > function f(){ return @() }
PS > $a=f
PS > $a -eq $null
True
PS > $a.length
PS > $a = @(f)
PS > $a
PS > $a.length
0
PS > $a -eq $null
PS > $a -ne $null
PS > ($a -ne $null).length
0
PS > $null -eq $a
False
PS > $null -ne $a
True


Here $a is an array with no elements, empty set, but not null.

Node.JS rest api Tutorials