在javascript中从多维数组中删除特殊元素
我的数组如下所示:在javascript中从多维数组中删除特殊元素,javascript,arrays,multidimensional-array,Javascript,Arrays,Multidimensional Array,我的数组如下所示: var my_array=[ [[1,0], [2,2], [4,1]], [[4,9], [3,1], [4,2]], [[5,6], [1,5], [9,0]] ] var result_array=[ [[1,0], [2,0], [4,1]], [[5,6], [1,5], [9,0]] ] 我想过滤上面的my_数组,并从上面的数组中删除所有数组(例如[[4,9],[3,1],[4,2]),如果数组的所有子数组在1处没有特定值(例如0)。位置(
var my_array=[
[[1,0], [2,2], [4,1]],
[[4,9], [3,1], [4,2]],
[[5,6], [1,5], [9,0]]
]
var result_array=[
[[1,0], [2,0], [4,1]],
[[5,6], [1,5], [9,0]]
]
我想过滤上面的my_数组
,并从上面的数组中删除所有数组(例如[[4,9],[3,1],[4,2]
),如果数组的所有子数组
在1处没有特定值(例如0
)。位置(子数组[1]
)
所以我的结果应该是这样的:
var my_array=[
[[1,0], [2,2], [4,1]],
[[4,9], [3,1], [4,2]],
[[5,6], [1,5], [9,0]]
]
var result_array=[
[[1,0], [2,0], [4,1]],
[[5,6], [1,5], [9,0]]
]
请参见上文:从my_array
中删除第二个数组,因为第二个子数组在第一个索引处不包含0
-列
我的想法是使用类似于此的代码,但我无法真正让它工作:
var my\u数组=[
[[1,0], [2,2], [4,1]],
[[4,9], [3,1], [4,2]],
[[5,6], [1,5], [9,0]]
]
result_array=my_array.filter(函数(项){返回项[1]!=0})
console.log(JSON.stringify(result_array))
简单的方法是在外部数组的过滤器中查找其中与我们的标准匹配的任何数组,并在较旧的浏览器上使用(或数组#indexOf
,与未找到的-1相比)在中查找回调,查看子数组是否包含0
2015年欧洲标准+
var my\u数组=[
[[1,0], [2,2], [4,1]],
[[4,9], [3,1], [4,2]],
[[5,6], [1,5], [9,0]]
];
var filtered=my_array.filter(middle=>middle.some(inner=>inner.includes(0));
console.log(过滤)代码>
。作为控制台包装器{
最大高度:100%!重要;
}
你叫什么子数组?例如[4,9]
这一个!哦,如果你看到上面的Array#find
,点击刷新。应该是
#一些
。认为OP希望在中间进行位置特定测试arrays@charlietfl:谢谢,但显然不是,因为OP已经接受了一个完全使用我的代码的答案,并在我的答案之后发布。