0
私は、JavaScriptパターンの1つを連鎖しています。親関数を返す内部関数、どうですか?
ここで私は、最後の行では、この
function thisFunc(fullName){
var that = this;
this.firstName = function(name){
fullName = fullName + name;
return this;
};
this.lastName = function(name){
fullName = fullName + ' ' + name;
return that;
};
this.show = function(callback){
callback(fullName);
return that;
};
}
var x = new thisFunc('');
x.firstName('Karthikeyan').lastName('Sundararajan').show(function(result){
console.log(result);
});
var y = new thisFunc('');
console.log(y.firstName('Karthik'));
のようなコードを持っていた機能のfirstNameの戻り値を印刷し、私はこのような出力を得ています。
thisFunc {firstNameの[機能]とLastName:[機能]、ショー: [機能]}のfirstNameの親である
をそれがthisFuncを返す理由は、私はそれがfirstNameのを返すであろうと予想しました。そして、私は、「これを返す」と「それを返す」と言ったとき、私は同じ結果を見ています。
firstName関数は 'that'を返し、オブジェクト 'y'を返します。結果は良いです。 あなたの機能は連鎖するようになっているため、毎回あなたのオブジェクトを返すようになります。 フルネームを追加したい場合は、 のような関数を追加します。this.getFullName = function(){return fullName; }; また、show関数を使用してコールバックでfullNameを取得します。 – PortePoisse