Показать сообщение отдельно
  #1 (permalink)  
Старый 23.03.2013, 11:43
Аспирант
Отправить личное сообщение для xfreewindx Посмотреть профиль Найти все сообщения от xfreewindx
 
Регистрация: 19.08.2012
Сообщений: 33

Вопрос по задачке
Здравствуйте!

Могли бы вы пояснить.
Задача из учебника:

function work(a, b) { 
  alert(a + b); // work - произвольная функция
}

function makeLogging(f, log) { /* ваш код */ }

var log = [];
work = makeLogging(work, log);

work(1, 2); // 3
work(4, 5); // 9

for(var i=0; i<log.length; i++) {
  alert( 'Лог:' + [].join.call(log[i]) ); // "Лог:1,2", "Лог:4,5"
}


Непонятна эта строка, что здесь происходит?
[].join.call(log[i])

func.call(context, arg1, arg2,...)
здесь у нас context = log[i] ???

я что-то запутался в аргументах call/apply, особенно когда у apply/call в скобках всего один аргумент.

Спасибо.
Ответить с цитированием