Чем вызов функции с apply отличается от простого вызова функции?
Apply это вызов функции с подменой контекста и с переменным количеством аргументов, вот пример:
function func() {
alert(this);
for (var i = 0; i < arguments.length; i ) {
alert(arguments[i]);
}
}
func(1, 2, 3);
func.apply('abc', [1, 2, 3, 4]);