IT_Programming/JavaScript

JavaScript에서 return의 의미

JJun ™ 2006. 4. 27. 11:42

어떤 Object의 이벤트 헨들러의 return 의 값은 그 Object의 고유작업에 영향을 미칩니다.

return 값이 false라면 그 Object의 고유작업은 취소가 됩니다.

 

captureEvents()를 하고 routeEvent()를 한 상태에서의

상위 이벤트의 return의 값은 하위의 이벤트 헨들러에게 영향을 미칩니다.

 

즉, 상위의 값이 return false; 라면 하위 이벤트 헨들러의 return 값에 상관없이

하위의 이벤트 헨들러는 호출 되지만, Object의 고유작업은 취소 됩니다.

 

IE4에서는 event.returnValue = true(or false)라는

event Object의 property가 있습니다.

 

이벤트헨들러 = "function()" 에서도 지정된 함수 안에서 반환 값을 지정할 수 있습니다.

이벤트헨들러 = "return function()"로 사용하지 않아도 됩니다.

 

기능은 일반 return 문과 같습니다.

 

MS 문서에는..

 

The value of this property takes precedence over values returned by the function, such as through a return statement. 라고..

 

일반 return 문 보다 선행한다고 나와 있는데, 이것과 일반적인 return을

둘 다 사용할 수 있는데, 이것이 우선한다는 것 같습니다.

 

IE4의 event.cancelBubble은 기본값은 false이고 event.cancelBubble=true

상하위가 같은 이벤트 헨들러를 가지고 있을 때 하위에서 지정하면

상위의 이벤트헨들러를 취소합니다.

 

이것은 nn4에서 하위에서 이벤트를 return false를 반환하는 것과 용도가 같습니다.

 

이벤트에서 return의 값은 이벤트가 일어난 Object에서의

그 Object의 고유 작업에 영향을 미칩니다.

 

어떤 Object가 가지고 있는 이벤트의 반환값은 지정된 고유작업을 결정합니다.

이 반환 값으로 고유작업을 제어할 수 있습니다.

 

경로가 다른 프레임을 captureEvents 할 때는

signed script의 enableExternalCapture 를 사용해야 합니다.

 

출처: http://www.jakartaproject.com/