Я стараюсь не дублировать вопросы, очевидно, как я видел некоторые вопросы/ответы относительно Javascript Дугласа Крокфорда в хорошую частях книгиFunction.prototype.method что прототип [имя]
Я понимаю, большинство из этого кода
Function.prototype.method = function (name, func) {
this.prototype[name] = func;
return this;
};
Function.method('inherits', function (Parent) {
this.prototype = new Parent();
return this;
});
var Mammal = function (name) {
this.name = name;
}.method('get_name', function() {
return this.name;
}).method('says', function() {
return this.saying || '';
});
var Cat = function (name) {
this.name = name;
this.saying = 'meow';
}.inherits(Mammal)
var myCat = new Cat('bagsley');
myCat.get_name();
у меня возникли проблемы с получением этого.prototype [name], почему он не написан как this.prototype.name; Я знаю, возвращая это позволяет сцепление и синтаксис здесь очень похож на JQuery, но я до сих пор не получить прототип [имя] часть
Любая помощь apprecaited благодаря
http://stackoverflow.com/questions/4968406/javascript-property-access-dot-notation-vs-brackets – Jack
Это назначение параметров на новый объект, поэтому может» t используйте точечную нотацию. – elclanrs
@elclanrs Нет, точечная нотация не может использоваться, потому что имя свойства является динамической строкой. –