Public/Get-ArrayProperties.ps1

Function Get-ArrayProperties {
    <#
        .SYNOPSIS
        Accepts an array and returns all note properties
         
        .PARAMETER Array
        array of objects
 
        .OUTPUTS
        Outputs a flat array of strings from provided arrays note property list
        .EXAMPLE
        $Array
        ---------------
        Name : Luke
        Location : CE
 
 
        Get-Properties $Array
        "Name", "Location"
    #>

    [CmdletBinding()]
    param (
        [Parameter(
            Mandatory
        )]
        [array]
        $Array
    )
    Return ($Array | Get-Member | Where-Object {
            $_.MemberType -eq "NoteProperty"
        }).Name
}