Quelle est la fonction jQuery .apply?


Réponses:


125

applyappelle une fonction avec un ensemble d'arguments. Cela ne fait pas partie de jQuery, cela fait partie du noyau Javascript. Cependant, il est mentionné dans la documentation jQuery:

http://docs.jquery.com/Types#Context.2C_Call_and_Apply

Syntaxe:

somefunction.apply(thisObj, [argsArray])

Les appels au- dessus de la fonction somefunction, la mise thisà l' thisObjintérieur du périmètre de la fonction, et en passant dans les arguments de argsArrayque les arguments de la fonction.


2
La fonction [ .call () ] ( mdn.beonex.com/en/Core_JavaScript_1.5_Reference/Global_Objects/… ) prend également a this, mais elle est suivie d'une série d'arguments listés individuellement au lieu d'un tableau contenant les arguments .
Peter Ajtai

que fera ci-dessous que? $ .when.apply (null, objet) .done (rappel);
Gohel Kiran

@ user1531437 Cela appelle $.when(object).done(callback);, mais dans la fonction $.when, thisest défini sur le premier paramètre, à savoir null. On devrait sans doute utiliser $.when.call(null, object).done(callback);parce que le deuxième paramètre de .applyest censé être un tableau
Luke Madhanga

La fonction proxy jQuery , qui est utile pour changer la valeur de thisla variable de contexte, comme le natif de Javascript applypeut le faire
The Red Pea

5

Essentiellement, apply appellera une fonction dont le contexte est défini sur l'objet auquel vous appliquez la fonction. Cela signifie que dans la fonction, le référencement thisfera référence à cet objet.


Pour toute personne travaillant avec jQuery et arrivant à cette réponse, vous devrez utiliser $(this) pour obtenir l'objet jQuery associé et avoir accès aux méthodes jQuery.
R. Schreurs

@ R.Schreurs vous devez également utiliser l'objet jQuery.fn comme vu ici: stackoverflow.com/a/27374435/674033
AVProgrammer
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.