Я читаю книгу "Javascript: хорошие части".
Сейчас я читаю главу об увеличении типов:
Function.prototype.method = function (name, func) {
this.prototype[name] = func;
return this;
};
UPDATE:
Почему следующий код не работает?
js> Function.prototype.method("test", function(){print("TEST")});
typein:2: TypeError: this.prototype is undefined
Но следующий код работает без проблем:
js> Function.method("test", function(){print("TEST")});
function Function() {[native code]}
Почему этот код работает?
js> var obj = {"status" : "ST"};
js> typeof obj;
"object"
js> obj.method = function(){print(this.status)};
(function () {print(this.status);})
js> obj.method();
ST
"объект" - это объект.
Но я могу вызвать метод «метод» на нем.
В чем разница между Function.prototype.method и obj.method?