| 
 может быть так понятнее будет: func1.call1.call2(func2) 1) вызов call2 2) call2 меняет thisObj для call1 на func2 3) call2 вызывает свой thisObj – call1 4) call1 меняет thisObj для func2 на undefined (или window) 5) call1 вызывет вой thisObj – func2 | 
| 
 xaser, Все, до меня дошло. Это, конечно, не точно, но смысл такой 
myCall=function(){return this()}
myCall.call(function(){alert("foo")})
То есть call в этом смысле, напоминает вот этот myCall. | 
| 
 Ну мне сначала было примерно ясно как это работает, но четкой картины до сих пор нет. Цитата: 
 В спецификации call и [[Call]] насчет этого ничего не сказано. Или сказано в других пунктах? Это какое-то общее правило для взаимодействия метода с объектом? | 
| 
 Это какое-то общее правило для взаимодействия метода с объектом. //Если совсем уж тупо: this'ом у метода является то, что идёт перед точкой. | 
| 
 Цитата: 
 | 
| 
 Цитата: 
 | 
| 
 принцип работы call довольно прост. Если подумать что делает этот вызов: func1.call(obj);Правильно, выполняет функцию func1 так как в качестве контекста у метода call указана функция func1, и соответственно он выполняет эту функцию, при этом передав в нее в качестве контекста объект obj Пример: 
function func1() {
  // здесь this это контекст
  alert(this.ololo);
}
var obj = {ololo: "ololo"};
func1.call(obj); // выполняем функцию передав контекст obj
И так, из примера выше видно что call просто выполняет функцию в контексте которой он был вызван, при этом в качестве аргумента call принимает объект в контексте которого выполнит функцию...А теперь что же делает вариант с: func1.call.call(func2);в этом примере, второй call будет выполнять первый call, передав в нее необходимый контекст. А так как функция call должна принять в качестве контекста функцию, то тут второй call просто меняет контекст (функцию) у первого call и вызывает его. После срабатывает первый call и манипулирует уже с функцией переданной вторым call в качестве контекста. PS. Что-то сдается мне, что я тоже не понятно объяснил. | 
| 
 devote, а понятно объяснить как-то не получается.:) Это как "очевидно" у препода матана. Либо ты в теме и это действительно очевидно, либо не в теме и надо работать пока в голове картина не сложится. Именно "простыми словами" хрен объяснишь.) | 
| 
 Ага, для всех все очевидно, но ссылку на раздел спеки, где про это почитать можно, никто дать не может:) Цитата: 
 | 
| Часовой пояс GMT +3, время: 07:29. |