Показать сообщение отдельно
  #7 (permalink)  
Старый 15.12.2015, 00:46
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

uanr81, всё дело в удобстве. Предположим, что у нас одна и та же функция используется в разных times, для каждой нужен разный контекст:

var a = {foo: 'bar'};
var b = {bar: 'foo'};

function callback() {
    console.log(this);
};

123..times(callback, a);
456..times(callback, b);



А если нам родительский контекст нужно передать?

function a() {
    console.log(this); //hi

    123..times(function() {
         console.log(this); //тут уже другой контекст
    });
};


a.call('hi');



function a() {
    console.log(this); //hi

    123..times(function() {
         console.log(this); //hi
    }, this);
};


a.call('hi');
Ответить с цитированием