从多维数组中删除数组

时间:2017-03-31 07:30:35

标签: loops for-loop

Javascript问题。 我目前有这个数组,我想删除所有包含0&#39的子数组。

例如我有这个数组:

var changeReg = [
["PENNY", 0],
["NICKEL", 0], 
["DIME", 0], 
["QUARTER", 0],
["ONE", 0], 
["FIVE", 0], 
["TEN", 0],
["TWENTY", 0], 
["ONE HUNDRED", 100]
];

最终结果应为:

var changeReg = [["ONE HUNDRED", 100]];

我的代码:

  for(var i = 0; i < changeReg.length; i++) {
    for(var j = changeReg[i].length-1; j >= 0; j--) {
        if(changeReg[i][1] === 0) {
           changeReg.splice(i--, 1);
        }
    }
  }

问题: 当我执行我的代码时,它给了我这个错误: TypeError:无法读取属性&#39; 1&#39;未定义的。

1 个答案:

答案 0 :(得分:1)

功能方式是:

changeReg = changeReg.filter( function(item){
    return item[1] > 1;
})