Does powershell have associative arrays?

前端 未结 8 763
爱一瞬间的悲伤
爱一瞬间的悲伤 2020-12-16 09:25

I am writing a function that returns an id, name pair.

I would like to do something like

$a = get-name-id-pair()
$a.Id
$a.Name

like

相关标签:
8条回答
  • 2020-12-16 10:06
    PS C:\> $a = @{}                                                      
    PS C:\> $a.gettype()                                                  
    
    IsPublic IsSerial Name                                     BaseType            
    
    -------- -------- ----                                     --------            
    
    True     True     Hashtable                                System.Object       
    

    So a hashtable is an associative array. Ohhh.

    Or:

    PS C:\> $a = [Collections.Hashtable]::new()
    
    0 讨论(0)
  • 2020-12-16 10:14

    Create From JSON String

    $people= '[
    {
    "name":"John", 
    "phone":"(555) 555-5555"
    },{
    "name":"Mary", 
    "phone":"(444) 444-4444"
    }
    ]';
    
    # Convert String To Powershell Array
    $people_obj = ConvertFrom-Json -InputObject $people;
    
    # Loop through them and get each value by key.
    Foreach($person in $people_obj ) {
        echo $person.name;
    }
    
    0 讨论(0)
提交回复
热议问题