Cita:
Iniciado por matake
[...]aunque si lo del call() me suena haberlo visto pero me olvide de el[...]
Básicamente, la diferencia entre un método y otro está en los argumentos que reciben. El primer argumento es el mismo, el cual será el
this en la función. El segundo argumento en el método
.apply(), es un array con los argumentos que recibirá la función, mientras que en el método
.call(), dichos argumentos tienen que ir en la misma lista de argumentos de la llamada al método.
Código Javascript
:
Ver original//Método .apply()
funcion.apply(argThis, [arg1, arg2, argN]);
//Método .call()
funcion.call(argThis, arg1, arg2, argN);
Y desde la implementación del estándar ECMAScript 5, también se puede pasar un objeto literal o una lista de nodos (
Cuarto párrafo).
Un saludo