У меня есть приложение JavaScript, которое использует много обратных вызовов. Типичная функция выполняет обратный вызов и переносит ее с помощью другого обратного вызова.Когда мне следует использовать функцию call() vs, вызывающую функцию напрямую?
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()
метод (передавая результат вар в качестве второго аргумента), а не вызывая their_on_success()
и переходя в результате с помощью вызова функции?
Основной случай для 'apply' - это дело с переменными аргументами, поэтому вы можете просто передать ему аргументы. –