개체가 함수에 전달되면 개체 속성이 손실됩니다.

데이비드 가드

객체가 함수에 전달되면 관련된 유형의 속성을 잃는 것처럼 보입니다 NoteProperty.

간단한 테스트로이 동작 (아래 코드)을 재현 할 수 있으며 결과는 다음과 같습니다.

기능 외부 확인-
속성이 존재합니다.
함수 내부 확인-
속성이 존재하지 않습니다.

누구든지 PowerShell이이 매너에서 작동하는 이유를 설명 할 수 있으며 추가 한 구성원이 예상대로 함수에 전달되는지 확인하기 위해 어떻게 해결할 수 있습니까?


위의 동작을 재현하는 코드

function Out-Object
{
    param(
        [parameter(Mandatory=$true)]
        [object[]]$Object
    )

    Write-Output "Checking inside of function -"
    if ( Get-Member -InputObject $Object -Name "PropertyOne" -MemberType "NoteProperty" ) {
        Write-Output "  Property exists."
    } else {
        Write-Output "  Property does not exist."
    }
}

$newObject = New-Object -TypeName PSCustomObject
$newObject | Add-Member -NotePropertyName "PropertyOne" -NotePropertyValue "ValueOne"

Write-Output "Checking outside of function -"
if ( Get-Member -InputObject $newObject -Name "PropertyOne" -MemberType "NoteProperty" ) {
    Write-Output "  Property exists."
} else {
    Write-Output "  Property does not exist."
}

Out-Object $newObject
문서

Ansgar가 말했듯이 Out-Object 함수의 배열처럼 처리합니다. 당신은 변경할 수 있습니다

[object[]]$Object

...에

[object]$Object

또는 함수 내에서 $ object를 인덱싱해야합니다.

if ( Get-Member -InputObject $Object[0] -Name "PropertyOne" -MemberType "NoteProperty" ) {

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

매개 변수 개체가 함수에 전달 된 후 null이됩니다.

분류에서Dev

함수 '개체에'개체 '속성이 없습니다.

분류에서Dev

메서드에 개체를 전달하면 값이없는 개체가 생성됩니까?

분류에서Dev

개체의 속성에 개체를 할당하면 속성이 개체가됩니까? 그렇다면 두 번째 개체를 통해 첫 번째 개체에 액세스하려면 어떻게해야합니까?

분류에서Dev

핵심 데이터 개체에서 개체를 가져 오면 잘못된 개체가 검색됩니다.

분류에서Dev

AttributeError : 'Tensor'개체에 사용자 지정 손실 함수에 'numpy'속성이 없습니다 (Tensorflow 2.1.0).

분류에서Dev

목록에 추가하면 'int'개체에 '추가'속성이 없습니다.

분류에서Dev

null 속성이있는 개체를 정렬하면 Firefox와 Chrome간에 다른 결과가 생성됩니다.

분류에서Dev

개체의 속성이 함수가 아닙니다.

분류에서Dev

TypeError : # <ServerResponse> 개체의 'locals'속성이 함수가 아닙니다.

분류에서Dev

인수로 전달되면 개체가 숫자로 바뀝니다.

분류에서Dev

개체 키가 PascalCase에 있으면 ember의 중첩 개체에 대한 속성이 실행되지 않습니다.

분류에서Dev

AttributeError : '함수'개체에 '텍스트'속성이 없습니다.

분류에서Dev

'함수'개체에 'pprint'속성이 없습니다.

분류에서Dev

AttributeError : '함수'개체에 'HOST'속성이 없습니다.

분류에서Dev

ODOO '함수'개체에 '__getitem__'속성이 없습니다.

분류에서Dev

함수 개체에 'entry_set'속성이 없습니다.

분류에서Dev

Django : '함수'개체에 'ModelSelect2'속성이 없습니다.

분류에서Dev

개체 속성을 양식에 전달하고 다시 가져옵니다.

분류에서Dev

requestAnimationFrame에 개체 함수를 전달할 때 개체 참조 손실

분류에서Dev

Unity를 통해 Startup에 개체를 속성 주입하면 null이됩니다.

분류에서Dev

내 사용자 지정 손실 함수를 사용할 때 다음 오류가 발생합니다. 'Tensor'개체에 '_numpy'속성이 없습니다.

분류에서Dev

속성 이름으로 중첩 된 개체를 검색하고 새 개체에 복사해도 모든 개체가 복사되지는 않습니다.

분류에서Dev

ObjC 객체에 대한 공개 신속한 함수가 동적 또는 정적으로 전달됩니까?

분류에서Dev

동일한 변수에서 새 개체를 초기화하면 이전 개체가 삭제됩니까?

분류에서Dev

BIOS 설정이 내 PC에 저장되지 않은 이유는 무엇입니까? 충전기를 분리하면 매개 변수가 손실됩니다.

분류에서Dev

매개 변수 중 하나에 널값이 전달되면 비교 함수가 실패 함

분류에서Dev

핵심 데이터 개체의 관계에 할당하면 개체가 손상된 것 같습니다.

분류에서Dev

다른 개체에 표시되지 않는 개체의 속성

Related 관련 기사

  1. 1

    매개 변수 개체가 함수에 전달 된 후 null이됩니다.

  2. 2

    함수 '개체에'개체 '속성이 없습니다.

  3. 3

    메서드에 개체를 전달하면 값이없는 개체가 생성됩니까?

  4. 4

    개체의 속성에 개체를 할당하면 속성이 개체가됩니까? 그렇다면 두 번째 개체를 통해 첫 번째 개체에 액세스하려면 어떻게해야합니까?

  5. 5

    핵심 데이터 개체에서 개체를 가져 오면 잘못된 개체가 검색됩니다.

  6. 6

    AttributeError : 'Tensor'개체에 사용자 지정 손실 함수에 'numpy'속성이 없습니다 (Tensorflow 2.1.0).

  7. 7

    목록에 추가하면 'int'개체에 '추가'속성이 없습니다.

  8. 8

    null 속성이있는 개체를 정렬하면 Firefox와 Chrome간에 다른 결과가 생성됩니다.

  9. 9

    개체의 속성이 함수가 아닙니다.

  10. 10

    TypeError : # <ServerResponse> 개체의 'locals'속성이 함수가 아닙니다.

  11. 11

    인수로 전달되면 개체가 숫자로 바뀝니다.

  12. 12

    개체 키가 PascalCase에 있으면 ember의 중첩 개체에 대한 속성이 실행되지 않습니다.

  13. 13

    AttributeError : '함수'개체에 '텍스트'속성이 없습니다.

  14. 14

    '함수'개체에 'pprint'속성이 없습니다.

  15. 15

    AttributeError : '함수'개체에 'HOST'속성이 없습니다.

  16. 16

    ODOO '함수'개체에 '__getitem__'속성이 없습니다.

  17. 17

    함수 개체에 'entry_set'속성이 없습니다.

  18. 18

    Django : '함수'개체에 'ModelSelect2'속성이 없습니다.

  19. 19

    개체 속성을 양식에 전달하고 다시 가져옵니다.

  20. 20

    requestAnimationFrame에 개체 함수를 전달할 때 개체 참조 손실

  21. 21

    Unity를 통해 Startup에 개체를 속성 주입하면 null이됩니다.

  22. 22

    내 사용자 지정 손실 함수를 사용할 때 다음 오류가 발생합니다. 'Tensor'개체에 '_numpy'속성이 없습니다.

  23. 23

    속성 이름으로 중첩 된 개체를 검색하고 새 개체에 복사해도 모든 개체가 복사되지는 않습니다.

  24. 24

    ObjC 객체에 대한 공개 신속한 함수가 동적 또는 정적으로 전달됩니까?

  25. 25

    동일한 변수에서 새 개체를 초기화하면 이전 개체가 삭제됩니까?

  26. 26

    BIOS 설정이 내 PC에 저장되지 않은 이유는 무엇입니까? 충전기를 분리하면 매개 변수가 손실됩니다.

  27. 27

    매개 변수 중 하나에 널값이 전달되면 비교 함수가 실패 함

  28. 28

    핵심 데이터 개체의 관계에 할당하면 개체가 손상된 것 같습니다.

  29. 29

    다른 개체에 표시되지 않는 개체의 속성

뜨겁다태그

보관