Javascript containsObject函数不正确?我找不到正确的控制台

Javascript containsObject函数不正确?我找不到正确的控制台,javascript,json,function,setinterval,Javascript,Json,Function,Setinterval,这个功能似乎给我带来了麻烦。我在if语句中使用此函数来检查JSON中的对象是否与数组中的某个项相同 que是一个数组:obj rects是一个JSON:list 当que.length大于2时,它似乎使,例如,如果que.lenght=2。。。该程序似乎创建了containsObject函数的两个实例,就好像对于que中的每个项,该程序的实例数与que中的项数相等 从计算机功能的控制台日志中,我获得以下日志: counter: 1 que: 2 counter: 1 que: 2 cou

这个功能似乎给我带来了麻烦。我在if语句中使用此函数来检查JSON中的对象是否与数组中的某个项相同

que是一个数组:obj

rects是一个JSON:list

当que.length大于2时,它似乎使,例如,如果que.lenght=2。。。该程序似乎创建了containsObject函数的两个实例,就好像对于que中的每个项,该程序的实例数与que中的项数相等

从计算机功能的控制台日志中,我获得以下日志:

counter: 1 
que: 2 
counter: 1 
que: 2 
counter: 2 
que: 2 
counter: 2 
que: 2 
应该是:

counter: 1
que: 2
counter: 2
que: 2
当计算机功能完成时,我总是在数组中添加一个新项。这会导致更麻烦的日志


感谢大家的阅读:我很感谢大家的回复。

你能发布que和RECT吗?请同时发布que,因为这会让你想象出问题所在。我有一个函数,可以生成随机的x和y坐标,如果这些坐标与RECT中的任何x和y画布匹配,那么画布对象就是que中的第一个对象。通常在完成计算机功能后,会匹配另一个x和y坐标,并且que.length+=1。我只是不明白为什么计算机会生成两个相同的实例。。。
function computer() {
    "use strict";
    var counter = 0, i = setInterval(function () {
    // do your thing
        if (containsObject(que, rects)) {
            turnEvent(que[counter].x, que[counter].y);
            counter += 1;
        }
        console.log("counter: " + counter);
        console.log("que: " + que.length);
        if (counter === que.length) {
            clearInterval(i);
            userTurn = true;

        }
    }, 500);
}
counter: 1 
que: 2 
counter: 1 
que: 2 
counter: 2 
que: 2 
counter: 2 
que: 2 
counter: 1
que: 2
counter: 2
que: 2