次のコードが未定義のオブジェクト プロパティを返す理由を理解する助けが必要です。
var count = 0;
var intervals = {
collection : []
}
intervals.collection[0] = function () {
this.timer = setInterval(function(){
count++;
$("p").html(count);
}, 1000);
}();
if(typeof intervals.collection[0] === "undefined") {
$("span").html("undefined");
}
作業例: http://jsfiddle.net/tvaQk/8/
基本的には、後で参照できる setIntervals のコレクションを保持して、ループしてクリアできるようにしたいと考えています。interval.collection 配列をループして、次のようなことができると思っていました。
clearInterval(intervals.collection[0].timer)
しかし、intervals.collection[0]
未定義なのでできません