Я искал в stackoverflow и в Интернете, не мог получить правильные результаты или объяснение различий между этими тремя методами.
Насколько я понимаю, все они выполняют то же самое, выполняя function/method in different context.
var google = {
makeBeer : function(arg1,arg2){
alert([arg1, arg2]);
}
}
google.makeBeer('water','soda');
Это моя нормальная функция объекта google. Теперь, когда я использую метод вызова и связывания здесь, вот вывод.
var google = {
makeBeer: function (arg1, arg2) {
alert([arg1, arg2]);
}
}
google.makeBeer('water', 'soda');
function yahoo() {}
var yah = new yahoo();
google.makeBeer.call(yah, 'pepsi', 'coke');
function msn() {
}
var msn = new msn();
google.makeBeer.call(msn, 'sprite', 'limca');
Я все еще не вижу цели сделать это, я могу пойти вперед и вызвать google.makeBeer three times with different arguments.
Может ли кто-нибудь просветить меня по этому поводу.