In this commit hay un cambio no puedo explicarentendimiento palabra "this"
deferred.done.apply(deferred, arguments).fail.apply(deferred, arguments);
convierte
deferred.done(arguments).fail(arguments);
AFAIK, cuando se invoca una función como miembro de algún objeto como obj.func()
, dentro de la función this
está vinculado a obj
, por lo que no tendría sentido invocar una función a través de apply()
solo para enlazar this
a obj
. En cambio, de acuerdo con los comentarios, esto fue necesario debido a alguna implementación anterior de $.Callbacks.add
.
Mi duda no se trata de jQuery, sino sobre el propio lenguaje Javascript: cuando se invoca una función como obj.func()
, ¿cómo puede ser que en el interior func()
la palabra clave this
no está obligado-obj
?
¿Cómo está relacionado el compromiso con su pregunta? '.apply' se usó para pasar' n' cantidad de argumentos a otra función, no para su contexto forzando habilidades. – Esailija
@Esailija, ¡creo que entendiste! – Raffaele
@Christoph Creo que entendió el punto. apply() no se usó para forzar el contexto, ya que * this * ya estaba * colocado correctamente * (y esto responde a mi pregunta) – Raffaele