반응형
자바스크립트에서 Pass by Value and Pass by Reference
Angular2를 작업한 지 거의 3개월이 다 되어 가는 지금 몇 가지 시나리오를 접했는데 어떻게 이런 일이 발생하는지 궁금했습니다.
특별한 경우this
키워드 관련 참조 또는 인스턴스를 통과하고 있는 것이 분명합니다.DOM Object
아니면Class
예를들면.
하지만 또 다른 것이 있습니다.ControlGroup
다른 변수에 할당될 때도 마찬가지입니다.그리고 두 변수 모두 같은 경우에 접근할 수 있습니다.ControlGroup
.
개체와 배열은 참조로 전달됩니다.숫자, 문자열, 부울과 같은 기본값은 값으로 전달됩니다.객체에 대한 참조 역시 원시형이며 다른 원시형과 마찬가지로 값으로 전달되지만, 참조하는 객체는 여전히 참조로 전달됩니다.
이것은 Angular나 TypeScript에 특정한 것이 아니라 단지 자바스크립트가 작동하는 방식입니다.
무엇을 하고 있는지 알고 있는 경우에 대한 조정은 다음과 같습니다.
의사 코드:
foo() {
int num = 1;
bar(num);
// num is 2!!
}
bar(int arg byRef) {
arg = 2
}
타이프스크립트:
function foo() {
let num = 1;
(() => {
const ret = bar(num) as any;
num = ret.arg;
})();
// num is 2!!
}
function bar(arg) {
arg = 2;
return { arg };
}
언급URL : https://stackoverflow.com/questions/35473404/pass-by-value-and-pass-by-reference-in-javascript
반응형
'programing' 카테고리의 다른 글
XML 구문 분석 - 요소트리 대 SAX 및 DOM (0) | 2023.11.02 |
---|---|
Spring Security로 사용자 업데이트 시 권한을 다시 로드하는 방법 (0) | 2023.11.02 |
MySQL에서 테이블의 고유 제약 조건을 표시하려면 어떻게 해야 합니까? (0) | 2023.11.02 |
join을 사용하기 위해 이 쿼리를 변경하는 방법은 무엇입니까? (0) | 2023.11.02 |
모든 모바일 장치에서 스크롤 사용 안 함 (0) | 2023.11.02 |