Comments 11
Про глобальные функции тогда уж тоже надо было рассказать, а то материал неполный получился.
У функций вида function() {} this равен объекту window, это у методов this равен объекту перед точкой.
-1
Почему везде undefind? Если undefined же…
0
Контекст для function(){} определяется в момент их вызова и равен объекту перед точкой.
var a = {
b: (function(){ console.log(this); }).bind(window)
};
a.b(); // window
0
Строго говоря в b попадает новая функция (результат вызова .bind(window)), которая при вызове устанавливает в качестве контекста выполнения this предоставленное значение (window) — что и происходит в вашем примере.
+1
В данной статье не рассматривались такие методы, как bind, call и apply.
Возможно, их стоило включить, но было принято решение не делать этого, чтобы не перегружать материал.
Возможно, их стоило включить, но было принято решение не делать этого, чтобы не перегружать материал.
0
UFO just landed and posted this here
Sign up to leave a comment.
Коротко о this в функциях javascript