2009-07-22 3 views
1

Я хочу выполнить метод: bar() когда метод foo() завершен.callback когда метод завершен

Это можно сделать так:

function foo() { 
    //.... 
    bar(); 
} 

Но есть, конечно, какой-нибудь способ, чтобы выполнить бар() как функции обратного вызова для Foo()? Я искал в прототипе API, но до сих пор я только нашел способы связывания обратных вызовов HTML-элементов ...

ответ

9
function foo(callback) { 
    // ... 
    callback(); 
} 

И тогда вы называете Foo как это:

foo(bar); 
+0

вы также можете чтобы проверить тип обратного вызова, чтобы убедиться, что это функция. –

+0

Спасибо, что синтаксис при выполнении этого внутри класса, созданного с помощью класса Class.create(); – dbd

+0

Или другим способом - внутри функции foo, назначить обратный вызов = обратный вызов || function() {}; таким образом, если обратный вызов имеет значение null или undefined, вместо него будет назначена и выполнена пустая функция. –

Смежные вопросы