在Javascript中过滤二维数组
我有这样一个整数数组:在Javascript中过滤二维数组,javascript,arrays,Javascript,Arrays,我有这样一个整数数组: var items = [ [1, 1, 2, 4], [2, 1, 4, 6], [5, 6, 4, 1], [1, 6, 3, 1] ]; 是否有一种简单的方法来查找和删除定义位置中具有特定值的所有数组? 例如,如果我想删除第二个位置上有“1”的所有数组,结果应该是: var items = [ [5, 6, 4, 1], [1, 6, 3, 1] ]; 如果我在第三个位置上删除了“4”,则结果应该是: var items = [ [1
var items = [
[1, 1, 2, 4],
[2, 1, 4, 6],
[5, 6, 4, 1],
[1, 6, 3, 1]
];
是否有一种简单的方法来查找和删除定义位置中具有特定值的所有数组?
例如,如果我想删除第二个位置上有“1”的所有数组,结果应该是:
var items = [
[5, 6, 4, 1],
[1, 6, 3, 1]
];
如果我在第三个位置上删除了“4”,则结果应该是:
var items = [
[1, 1, 2, 4],
[1, 6, 3, 1]
];
我知道我可以通过循环所有元素来实现这一点,但当二维数组较大(>1000个数组)时,这似乎需要相当长的时间。迭代
项
,使用函数过滤那些在给定位置没有给定值的内部数组
函数过滤器位置(数组、数字、位置){
返回array.filter(innerArray=>innerArray[position-1]!==number);
}
常数项=[
[1, 1, 2, 4],
[2, 1, 4, 6],
[5, 6, 4, 1],
[1, 6, 3, 1]
];
const newItems1=filterByPosition(项目1、2);
log('Items1:',newItems1);
const newItems2=filterByPosition(项目4、3);
log('Items2:',newItems2)代码>使用Array.filter,并结合查找不需要的值的函数