![](/img/trans.png)
[英]How do I filter arrays of an array by row length using javascript?
[英]How do I filter through an array of arrays using an index in JavaScript?
我正在研究 JavaScript 侧面项目,我有一个 json 文件,其中包含一个带有 arrays 的数组,如下所示:
arr =
{
"values": [
["Form Factor", "OS"],
["Landscape", "Android 9\n(Source)"],
["Portrait", "Analogue OS"],
["Micro\nLandscape", "?"]
]
}
第一个带有“Form factor”(索引 0)的数组是标题。 如果我想从 arrays 获得所有“外形尺寸”,我该怎么做?
我知道“Form Factor”的索引为 0,但我如何使用索引一次过滤多个 arrays? 最后我想要一个像
results = ["Form Factor", "Landscape", "Portrait", "Micro\nLandscape"]
我试过这样:
const index = 0;
const result = this.arr.values.filter(function (eachElem) {
return eachElem == index;
});
但这只是给了我一个空数组。
不要忘记检查这个
arr.values.map(x => x[0])
您的代码无法正常工作,因为 a) 未定义索引,您还需要将其作为参数,并且 b) 在您的情况下,没有任何元素为真。 在你的情况下,我会使用传统的 for 循环,但如果你愿意,你可以使用 es6 魔法来做到这一点。
let result = [];
for (let i = 0; i < arr.values.length; i++) {
result.push(arr.values[i][0]);
}
console.log(result);
只需使用 array.find() 它就容易多了,您可以在数组中搜索您的元素:
const found = array1.find(element => element > 10);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.