代码改变世界

二维数组去空

2017-12-12 20:52  我的益达  阅读(1152)  评论(0)    收藏  举报
 1 //二维数组去空
 2                 for (var i=0;i<priceArr.length;i++) {
 3                     for (var j=0;j<priceArr[i].length;j++) {
 4                         if (priceArr[i][j]== 0) {
 5                             priceArr[i].splice(j,1);
 6                             j=j-1
 7                         }
 8                     }
 9                     if (priceArr[i]== 0) {
10                         priceArr.splice(i,1);
11                         i=i-1
12                     }
13                 }

双重循环去掉二维数组中的空元素

j=j-1  是为了防止出现少删除一个空元素的bug  开始写的时候没注意  后来才发现   因为如果不进行这步操作  假设当前这是一个空元素  将会执行删除这个元素的操作,数组里面少了这个元素  故后面元素的下标都会前移,然后j++  如果下一个元素也为空则会少删除一个空元素