en.javascript.info/1-js/6-objects-more/1-object-methods/3-why-this/task.md
Ilya Kantor 87bf53d076 update
2014-11-16 01:40:20 +03:00

516 B
Raw Blame History

Почему this присваивается именно так?

[importance 3]

Вызовы (1) и (2) в примере ниже работают не так, как (3) и (4):

//+ run
"use strict"

var obj, f;

obj = {
  go: function() { alert(this); }
};

obj.go();            // (1) object

(obj.go)();          // (2) object

(method = obj.go)();      // (3) undefined

(obj.go || obj.stop)(); // (4) undefined

В чём дело? Объясните логику работы this.