Я читаю книгу "Javascript: Хорошие стороны".
Сейчас я читаю главу о типах дополнения:
Function.prototype.method = function (name, func) {
this.prototype[name] = func;
return this;
};
ОБНОВЛЕНИЕ:
Почему следующий код не работает?
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
«obj» - это объект.
Но я могу назвать на нем метод "метод".
В чем разница между Function.prototype.method и obj.method?