jQuery метод .fireWith()

jQuery объект Callbacks

Определение и применение

jQuery метод .fireWith() объекта Callbacks вызывает все ранее добавленные функции обратного вызова с заданным контекстом и аргументами. Этот метод возвращает объект обратного вызова к которому он присоединен (this).

jQuery синтаксис:

Синтаксис 1.7:
callbacks.fireWith(); // без аргумента
callbacks.fireWith( context );
callbacks.fireWith( context, arguments );

context - Anything
arguments - ArrayLikeObject

Добавлен в версии jQuery

1.7

Значения параметров

ПараметрОписание
contextСсылка на контекст, в котором должны быть запущены обратные вызовы в списке обратного вызова.
argumentsМассив или массивоподобный объект аргументов, которые будут переданы в список обратного вызова. Если этот параметр опущен или не определен, аргументы передаваться не будут. Исключение TypeError возникает в том случае, если аргумент не соответствует массиву, или массивоподобному объекту.

Пример использования

// возвращаем объект Callbacks и инициализируем переменную этим значением
let myCallbacks = $.Callbacks();

// создаем функцию и инициализируем переменную этим значением
const fn1 = function(val1, val2) {console.log((this.a || a) + val1 + val2)},
           myObj = {a: "my object "},
           a = "my Window/this ";

// добаляем функцию обратного вызова в список обратных вызовов объекта
myCallbacks.add( fn1 ); 

// вызываем все ранее добавленные функции обратного вызова с заданным аргументом
myCallbacks.fireWith( this, ["hello ", "world"] );

// вывод в консоль:
window/this hello world

// вызываем все ранее добавленные функции обратного вызова с заданным аргументом
myCallbacks.fireWith( myObj, ["hello ", "world"] );

// вывод в консоль:
my object hello world

В этом примере мы рассмотрели базовое использование функции $.Callbacks(), которую мы вызвали без параметра и возвратили объект Callbacks. После этого инициализировали три переменные, первая содержит функцию, вторая объект с одни свойством и третья содержит строку.

С помощью метода .add() объекта Callbacks мы добавили функцию в список обратных вызовов объекта Callbacks, и с помощью метода .fireWith() этого объекта мы вызываем все ранее добавленные функции обратного вызова с заданным аргументом и определенным контекстом - в первом случае это объект window (this ссылается на него), а во втором в контексте исполнения объекта myObj.

Обратите внимание, что мы использовали оператор || (логическое ИЛИ), это неободимо для того чтобы, если у объекта нет своего свойства "a", то поиск вёлся бы в глобальной области видимости.

jQuery объект Callbacks
×

Кажется, вы используете блокировщик рекламы :(

Этот ресурс не является коммерческим проектом и развивается на энтузиазме автора сайта, который посвящает все свое свободное время этому проекту.

Добавьте, пожалуйста, basicweb.ru в исключения блокировщика рекламы, этим вы поможете развитию проекта.