en.javascript.info/1-js/6-objects-more/1-object-methods/3-why-this/task.md
2015-03-10 12:36:58 +03:00

528 B
Raw Blame History

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

[importance 3]

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

//+ run no-beautify
"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.