Кто-нибудь может объяснить детали? Если я создаю объект, используя
$var = [PSObject]@{a=1;b=2;c=3}
и затем я ищу его тип, используя getType()
PowerShell говорит мне его типа Hashtable.
При использовании Get-Member (alias gm
) для проверки объекта очевидно, что хэш-таблица была создана, так как она имеет keys
и свойство values
. Итак, какая разница с "нормальной" хэш-таблицей?
Кроме того, какое преимущество использования PSCustomObject? Создавая один, используя что-то вроде этого
$var = [PSCustomObject]@{a=1;b=2;c=3}
единственная видимая разница для меня - это другой тип данных PSCustomObject. Также вместо свойств ключей и значений проверка с помощью gm
показывает, что теперь каждый ключ был добавлен как объект NoteProperty.
Но какие у меня преимущества? Я могу получить доступ к своим значениям, используя его ключи, как в хэш-таблице. Я могу хранить больше, чем простые пары ключ-значение (например, пары "ключ-объект") в PSCustomObject, JUST, как в хеш-таблице. Итак, какое преимущество? Есть ли какие-то важные отличия?