찾다

 >  Q&A  >  본문

javascript - 함수 내부의 외부 변수를 수정하는 방법

언급했듯이 코드는 다음과 같습니다.

으아악

의심 해결

给我你的怀抱给我你的怀抱2711일 전1045

모든 응답(7)나는 대답할 것이다

  • 欧阳克

    欧阳克2017-06-28 09:28:51

    위에서 작성하는 방법은 test的值当成参数,传进去了fn2里面而已,fn2里面的参数t仅仅只是和test값을 동일하게 만드는 것 뿐입니다.
    함수 내부의 외부 변수를 수정하고 싶다면 이렇게 작성하면 됩니다.

    으아악

    회신하다
    0
  • PHP中文网

    PHP中文网2017-06-28 09:28:51

    질문하신 분이 이미 "외부변수 수정방법"이라고 답변해주셨네요...

    으아악

    매개변수t当然不是指向test了,因为test는 기본 유형이고 기본 유형은 값 전송입니다. 즉, 값의 복사본만 상대방의 변수에 전달되는 반면 참조 유형은 참조(공유) 전송이며, 참조 유형을 가리킴 객체 포인터를 전달할 때 포인터의 복사본이 상대방의 변수에 전달됩니다. 상대방의 변수를 수정하는 것은 동일한 메모리 주소와 동일한 객체를 가리키기 때문에 원래 변수를 수정하는 것입니다.

    으아악

    참조(공유) 전달값 전달의 한 유형이라고 할 수도 있지만 전달된 값은 매우 특별합니다. 바로 포인터입니다.

    회신하다
    0
  • 阿神

    阿神2017-06-28 09:28:51

    Javascript 함수는 모두 참조 대신 값으로 전달됩니다. t와 test 사이에는 동일한 값이 있다는 점을 제외하면 아무런 관계가 없습니다.

    회신하다
    0
  • 扔个三星炸死你

    扔个三星炸死你2017-06-28 09:28:51

    직접 변경하면 됩니다. 값을 전달할 필요가 없습니다

    회신하다
    0
  • 滿天的星座

    滿天的星座2017-06-28 09:28:51

    js의 값 전달 및 참조 전달에 대해 자세히 알아보세요.
    이렇게 작성해야 하는 경우 테스트 변수를 객체로 캡슐화한 다음 수정을 위해 객체를 이 함수에 전달할 수 있습니다.

    으아악

    회신하다
    0
  • 巴扎黑

    巴扎黑2017-06-28 09:28:51

    으아악

    회신하다
    0
  • 習慣沉默

    習慣沉默2017-06-28 09:28:51

    JavaScript의 기본 유형에는 포인터나 참조가 없습니다. Object는 달리 설명하므로 이것이 유일한 트릭입니다.

    으아악

    회신하다
    0
  • 취소회신하다