Qual è la funzione .apply jQuery?


Risposte:


125

applychiama una funzione con un insieme di argomenti. Non fa parte di jQuery, è parte del core Javascript. Tuttavia, se ne fa menzione nei documenti jQuery:

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

Sintassi:

somefunction.apply(thisObj, [argsArray])

Le chiamate di sopra della funzione somefunction, impostazione thisdi thisObjnell'ambito di applicazione della funzione, e passando gli argomenti da argsArraycome argomenti alla funzione.


2
Correlata è la [funzione .call () ] ( mdn.beonex.com/en/Core_JavaScript_1.5_Reference/Global_Objects/… ) che accetta anche a this, ma è seguita da una serie di argomenti elencati individualmente invece di un array contenente gli argomenti .
Peter Ajtai

cosa farà di seguito? $ .when.apply (null, oggetto) .done (callback);
Gohel Kiran

@ user1531437 Questa chiamata $.when(object).done(callback);, ma nella funzione $.when, thisè impostata sul primo parametro, ad es null. Probabilmente, si dovrebbe usare $.when.call(null, object).done(callback);perché il secondo parametro di .applydovrebbe essere un array
Luke Madhanga

Distante era la funzione proxy jQuery , utile per modificare il valore della thisvariabile di contesto, come applypuò fare il nativo di Javascript
The Red Pea

5

In sostanza, apply chiamerà una funzione con il contesto impostato sull'oggetto a cui applichi la funzione. Ciò significa che all'interno della funzione, il riferimento thisfarà riferimento a quell'oggetto.


Per chiunque lavori con jQuery e arrivi a questa risposta, dovrai usare $(this)per ottenere l'oggetto jQuery associato e avere accesso ai metodi jQuery.
R. Schreurs

@ R.Schreurs Inoltre è necessario utilizzare l'oggetto jQuery.fn come si vede qui: stackoverflow.com/a/27374435/674033
AVProgrammer
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.