$json = ConvertFrom-Json "{key:true}"
$key = "key"
Write-Host $json[$key]
我希望打印出真实,但事实并非如此。我知道$json.key
会起作用。可以这样做吗?
答案 0 :(得分:8)
如果您知道$json.key
会起作用,那么为什么您要从点到方括号切换?
所有这些都可行:
$json = ConvertFrom-Json "{key:true}"
$key = "key"
Write-Host $json.$key
Write-Host $json.$($key)
Write-Host $json."$key"
答案 1 :(得分:2)
您可以使用带有变量的点表示法来引用它。
$json.$key
因此,如果在写主机中使用引号,则在Write-Host中需要一个子表达式
Write-Host "Key is: $($json.$key)"
您尝试使用数组表示法并返回null。