Why do I get this object type in an array?

This topic contains 2 replies, has 2 voices, and was last updated by  Kyle Hanson 3 months, 2 weeks ago.

  • Author
    Posts
  • #92815

    Kyle Hanson
    Participant

    Can someone please help me understand this

    @("taco").gettype()
    This outputs the type that I would expect

    (&{@("taco")}).gettype()
    In a scriptblock it outputs a string. Same thing for a function obviously.

    Any help will be appreciated.

  • #92821

    Don Jones
    Keymaster

    In the latter case you're forcing the shell to evaluate the array and enumerate its contents. Given that it has one item, which is a string, that's what you get. That's standard .NET behavior, not really PowerShell per se.

    • #92833

      Kyle Hanson
      Participant

      Thanks Don. That makes sense.

You must be logged in to reply to this topic.