如何在循环中使用set和clear Interval

时间:2017-03-25 20:46:15

标签: javascript vue.js vuejs2 vue-component

我有以下代码:

    ...
    counters: [0, 0]
    ...
        var limit = [3, 5];
        var intervals = [];
        for (var i in limit) {
            intervals.push(setInterval(function () {
                that.counters.splice(i, 1, that.counters[i] + 1);
                if (that.counters[i] >= limit[i]) {
                    clearInterval(intervals[i]);
                }
            }, 10));
        }

当我在没有for循环的情况下编写它时,我得到2个计数器:一个计数到3,一个计数到5。

但是当我运行这段代码时,我有一个停在0的计数器和一个永不停止的第二个计数器。

为什么会发生这种情况?如何使用for循环?

0 个答案:

没有答案