2012-06-13 3 views
0

하나의 기능을 다른 기능으로 중지 할 수 있습니까?하나의 기능이 중단됩니다. 가능한가?

나는 이런 식으로 뭔가 싶어 :이 같은 것을 사용하여 가능하다 알고

function foo() 
{ 
    bar(); 
    /*if is ok, then continue, else break*/ 
} 

function bar() 
{ 
    if(!/**condition**/) stop foo(); 
} 

:

function foo() 
    { 
    if(!bar()) return; 
    } 

을하지만 어쩌면 더 나은 방법이?

샘플 :

함수 내부
var dk = new function() { 
    this.doSomething() { 
    this.em("some_id") || return; 
    }; 

    this.em(data) { 
     return document.getElementById(data); 
    }; 
    }; 
+4

** 예외 **를 찾는 것처럼 보입니다. –

+0

반환 값을 사용하지 않으면 가능하지 않다고 생각합니다. –

+0

@TomaszNurkiewicz "예외"는 무엇을 의미합니까? – John

답변

0

, 당신은 실행 중지 호출 기능을 말할 수 없습니다.

제안 된 두 번째 버전은이 동작을 달성하기위한 일반적인 방법입니다. 함수가 성공하면 true을 반환하고 그렇지 않으면 false을 반환하고 호출하는 함수가 무엇을 수행할지 결정합니다 (즉, 실행을 중단하도록 함).

또 다른 접근 방법으로 예외가 발생할 수 있습니다. 당신은

bar() 기능을 사용하면 다음이 호출하는 함수 foo()true 또는 false을 반환 할 모든 검사 또는 코드를 만들 수 ... 난 당신이 이미 자신을 대답 생각

0

상황에서 더 유용 할 수 있습니다 무엇을 자신을 고려해야한다

반환 값에 따라 코드 실행을 계속하거나 중지 할 수 있습니다.

관련 문제