画像スワッパー機能を設定しようとしています。これまでの私のコードは次のとおりです。
var imageChanger = function(start, end) {
var start = 1;
var end = 22;
return {
count: function(url) {
var self = this;
if(start > end) {
start = 1;
}
console.log(url);
console.log(start++);
imageSwapper = setTimeout( function() {
self.count();
}, 2000)
},
stopCount: function() {
clearTimeout(imageSwapper);
}
}
}
ご覧のとおり、これは 2 つのパラメーターを取る関数です。次に、2 つのメソッドを使用して独自のオブジェクトを返します。count
最初の関数呼び出しの後にメソッドを呼び出してimageChanger
パラメーターを渡すurl
と、一度渡したものだけがログに記録され、次にsetTimeout
関数が実行されると、その後は未定義になります。
ここで何が間違っているのかわかりません。この関数が最初のログの後に undefined を返すのはなぜcount
ですか??