javascript排序2d数组并删除一些元素

时间:2011-06-16 11:54:06

标签: javascript arrays loops

我在JS中创建了一个数组

var myArray=[
 [el1,pos1,width1,active1],
 [el2,pos2,width2,active2],
 [el3,pos4,width3,active3],
 [el4,pos1,width4,active4]
];

如何删除有效(i)= 0的元素? 然后我需要按pos(i)升序排序 你能给我一些样品/解决方案吗?

1 个答案:

答案 0 :(得分:2)

如上所述,there are a lot of questions that already cover the sorting issue。看看他们。

关于删除:

您可以迭代数组,只将要保留的值添加到新数组中:

var filtered = [];

for(var i = 0, l = myArray.length; i < l; i++) {
    if(myArray[i][3] !== 0) {
        filtered.push(myArray[i]);
    }
}

如果您想更改阵列就地,可以使用.splice()[docs]

for(var i = myArray.length; i--; ) {
    if(myArray[i][3] === 0) {
        myArray.splice(i, 1);
    }
}