옵션이라는 해시가 있습니다. 내가 직면하고있는 문제는 options['beforeOpen']
가 이미 함수가 될 수도 있다는 것인데,이 경우 덮어 쓰고 싶지 않습니다. 그 대신 매번 호출해야하는 다른 함수를 호출하고 싶습니다.다른 익명 함수 내부에 익명 함수 포함하기
이 예제에서 매번 호출해야하는 메서드는 methodThatINeedToDo
입니다. 아래의 코드가이 작업을 수행 할 것으로 생각했지만 예상대로 작동하지 않습니다.
function methodThatINeedToDo(){alert('maintenance');}
var options = {beforeOpen: function(){alert('first');}}
if(typeof options['beforeOpen'] == "function"){
options['beforeOpen'] = function(){options['beforeOpen'].call(); methodThatINeedToAddToDo();}
} else {
options['beforeOpen'] = methodThatINeedToDo;
}
? 그것은 나를 위해 일한 것 같습니다. –
옵션 [ 'beforeOpen']. call()? 옵션 [ 'beforeOpen']()이 될 수 없습니까? – Edorka
왜이 유연하지 못한 솔루션으로 귀찮게합니까? – schlingel