Что я получаю через квадратные скобки в переменной, если они не существуют как член? - PullRequest
0 голосов
/ 07 декабря 2018

Нашел некоторый код, который содержит переменную с «свойством», доступным через квадратные скобки $item['PageLayoutType'].

Мне было интересно, почему и к чему я здесь обращаюсь.Это не совсем собственность, не так ли?В противном случае она должна отображаться в | Get-Member верно?

Переменная была создана с помощью некоторого SharePoint Pnp PowerShell:

$item = Get-PnPListItem -List 'SitePages' -Query "<View><Query><Where><Eq><FieldRef Name='FileLeafRef' /><Value Type='Text'>Home1.aspx</Value></Eq></Where></Query></View>"

Как узнать, что еще можно заключить в квадратные скобки?Ничто из того, что извлекается Get-Member, не работает в них.

1 Ответ

0 голосов
/ 07 декабря 2018
$object = @{
    first = "1"
    second = "2"
    third = @{
        fourth = "4"
        fifth = "5"
        sixt = @{
            seventh = "6"
        }
    }
}

Это хеш-таблица, как в примере выше.

$object | Get-Member

Даст вам свойства, но не базовые значения.

Вы можете найти такие значения, как:

$object.first.fourth.seventh

Или:

$object["first"]

Или:

$object["third"]["sixt"]["seventh"]

Простой способ увидеть и понять законченный объект - просто преобразовать его в JSON:

$object | ConvertTo-Json

Это выведет полный объект и, если онвсе еще не показывает все, используйте параметр -Depth.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...