учебников, которые я видел по поиску бы оставить меня с нежелательно форматом, какКак вернуть правильно и с цепью, и по умолчанию функции
main.default('word');
main.default('word').chain();
, где, как я хочу сделать
main('word');
main('word').chain();
Этот код предназначен только для примера console.log(), чтобы увидеть, могу ли я переносить это слово. войти «слово» или войти «прикован слово»
Если я return this;
то я могу цепь:
var main = function(input){
this.input = input;
this.chain = function(){
this.chained='chained '+this.input;
return this.chained;
}
this.default = function(){
return this.input;
}
return this;
};
console.log(main('word').chain()); //'chained word'
Но, я не могу сделать console.log(main('word').chain().chain());
я думаю от того, что я прочитал, потому что цепного функции не возвращает this
, вместо этого он возвращает this.chained
Тогда, если я return this.default();
внутри функции main
, действие по умолчанию я хочу main
выполнить происходит
var main = function(input) {
this.input = input;
this.chain = function() {
this.chained = 'out '+this.input;
return this.chained;
}
this.default = function() {
return this.input;
}
return this.default();
};
console.log(main('word')); //'word'
Я также просматривал jquerys основного файла, чтобы увидеть, если я могу выбрать, как они сделали это с помощью функции JQuery, но я действительно не могу увидеть, что там происходит.
в вашем случае 'this' является глобальный объект: _window_ – Grundy
так, что вы хотите точно? – Grundy
Какой учебник вы прочитали? Для цепи вам, конечно, нужно использовать 'return this;' (без свойства)! – Bergi