2016-11-25 1 views
-1

다른 함수의 다른 함수 변수에 액세스하는 권장 방법은 무엇입니까? 내 functionA는 현재 25 개의 변수를 보유하고 있으며 복잡한 논리가 포함되어 있습니다. 현재 FunctionA에있는 변수는 functionB에서만 액세스 할 수 있으므로 더 높은 범위 또는 전역 변수에서 선언 할 수 없습니다. SIDS 솔루션이 아닌 경우 함수 B의 변수에 액세스 할 수 있도록 모든 제안은다른 함수의 여러 변수에 액세스하는 권장 방법

당신은에 액세스하려면이

return { 
     A: x, 
     B: y, 
     C: ts, 
     D: z 
    } 

처럼 여러 값을 반환하는 반환 문을 사용할 수 있습니다

+0

코드 예제를 제공해 주시겠습니까? 반환은 작동하지 않습니까? – Lain

+0

함수 A가 함수 B에 의해 호출 되었습니까? 함수 A가 호출하는 함수 B? 함수 A, B가 함수 C에서 호출 되었습니까? – fpierrat

+0

왜 함수 B를 매개 변수로 보내지 않습니까? – Weedoze

답변

1

당신은

p=function B(); 
console.log(p.A) // x 
console.log(p.B) // y 
0

을 사용할 수 있습니다 원하는 것은 실행 순서에서 질문이 명확하지 않기 때문에 항상 자신의 범위/네임 스페이스를 만들 수 있습니다.

;var MyLogic = { 
    _V1: null, //Some variables 
    _V2: null, //Some variables 

    //Both functions access the variables in MyLogic 
    FuncA: function(){ 
     console.log(this._V1, this._V2) 
    }, 

    //Both functions access the variables in MyLogic 
    FuncB: function(){ 
     this._V1 = 'hello'; 
     this._V2 = 45.55 
    } 
}; 

MyLogic.FuncB(); 
MyLogic.FuncA(); 
관련 문제