【发布时间】:2019-11-22 03:30:23
【问题描述】:
我有一个数组数组,我想得到一个元素索引的数组。 我从这个开始:
[
[1,2,3],
[-1],
[-1],
[4,5,6],
[-1],
[],
[]
]
我想要:
[1,2,4]
有些元素可能还没有被填充(它们会随着时间的推移而被填充),但我想指定哪些元素是故意为空的。这就是 -1 的含义(我可以很容易地使用 null)。
我确定 filter 是正确的使用方法,但我不想要该元素;我只想要元素的索引。
我确信我可以通过几个循环和迭代来做到这一点,但这似乎有点过头了。
【问题讨论】:
-
array.map 是你的朋友。 developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
-
谢谢,虽然我从来没有理解过 map - 它是如此...抽象和灵活 - 并且不知道我将如何实现它。我会尽力解决这个问题。
-
.map必须在原始数组的每次迭代时将某些内容返回到结果数组中。如果您想在结果数组中排除与您的条件不匹配的条目,.map不会这样做。 -
抱歉我很快就回复了,在这种情况下你会使用 array.reduce developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
-
您的方案的最佳方法是使用
reduce,因为它已经得到回答。
标签: javascript arrays filter