遍历JSON对象仅获取前2个值

时间:2018-02-01 01:09:08

标签: json powershell

我正在尝试在PowerShell v5.1中编写一些代码,这些代码通过解析的JSON对象来获取其属性名称。下面是一个示例JSON对象:

{
    "str1": "Hello World!",
    "strings": {
        "strA": "Foo!",
        "strB": "Bar!"
    },
    "others": {
        "myBool": true,
        "myInt": 42
    }
}

首先,我将对象读取并解析为PSObject

$jsonString = '{"str1": "Hello World!", "strings":{"strA": "Foo!","strB": "Bar!"}, "others":{"myBool": true,"myInt": 42}}'
$json = $jsonString | ConvertFrom-Json

接下来,我可以使用$json.PSobject.properties.name获取所有顶级属性名称的列表:

PS> $json.PSobject.properties.name
str1
strings
others

但是,如果我使用$json.PSobject.properties.value,我只会看到第一个两个值输出:

PS> $json.PSobject.properties.value
Hello World!

strA strB
---- ----
Foo! Bar!

我希望看到此处包含others属性。有没有理由我没有看到它?

0 个答案:

没有答案