因此,我对此FOR循环有一个问题,只是无法弄清楚。在这种情况下,我知道这需要至少重复两次。数组至少看起来像这样...

    dTrackerArray = {sParentValue, 1234, sParentValue, 5678}

但是出于某种原因,此for循环仅删除一个实例,而不是全部实例。
     var check = $.inArray(sParentValue, dTrackerArray);
      if (check != -1) {
       for(var i = dTrackerArray.length; i > 0; i--) {
         if( dTrackerArray[i] === sParentValue ) {
          dTrackerArray.splice(i,1);
          dTrackerArray.splice(i-1,1);
          }

      }}

我非常感谢能在这里获得的任何帮助!谢谢!

编辑:第二个拼接是删除与sParentValue关联的1234。看来工作正常。

最佳答案

问题在for循环中。您从以下位置开始:var i = dTrackerArray.length并采用dTrackerArray[i]这个元素不存在。另外,您忘记了与0索引元素进行交互。因此,您必须将for循环更改为:

for(var i = dTrackerArray.length-1; i >= 0; i--)

09-25 22:54