Синтаксис метода вызова JavaScript:
fun.call(object, arg1, arg2, ...)
Синтаксис метода применения JavaScript:
fun.apply(object, [argsArray])
Основное отличие состоит в том, что call () принимает список аргументов, а apply () принимает один массив аргументов.
Так что если вы хотите вызвать функцию, которая печатает что-то, и передать область объекта для выполнения в, вы можете сделать:
function printSomething() {
console.log(this);
}
printSomething.apply(new SomeObject(),[]); // empty arguments array
// OR
printSomething.call(new SomeObject()); // no arguments