Когда я должен использовать call () против прямого вызова функции?
У меня есть приложение JavaScript, которое использует много обратных вызовов. Типичная функция примет обратный вызов и обернет его другим обратным вызовом.
Namespace.foo = function( arg, their_on_success ) {
var my_on_success = function( result ) {
console.log( 'my_on_success() called' );
if( 'function' === typeof their_on_success ) {
their_on_success( result );
}
}
something( arg, my_on_success );
};
Учитывая приведенный выше пример, когда такая установка должна использовать роднуюcall()
метод (передавая результат var в качестве второго аргумента), а не вызываяtheir_on_success()
и передать результат через вызов функции?