我有一个 JavaScript 对象数组。每个对象都包含一个名为“myPropArray”的属性,它实际上是另一个数组。下面是该数组的结构:
我需要做的是将此属性下的所有数组合并成一个数组,且不包含重复项(使用JavaScript)。 以下是我的实现方式(使用lodash库):
这实际上返回以下结果:
但是我想要实现的是:
let myBaseArray = [
{
myPropArray: ["s1", "s2"],
someOtherProp: "randomString1"
},
{
myPropArray: ["s2", "s3"],
someOtherProp: "randomString2"
}
]
我需要做的是将此属性下的所有数组合并成一个数组,且不包含重复项(使用JavaScript)。 以下是我的实现方式(使用lodash库):
_.map(myBaseArray , 'myPropArray')
这实际上返回以下结果:
[
["s1", "s2"],
["s2", "s3"]
]
但是我想要实现的是:
["s1", "s2", "s3"]
此外(如果可能的话),我正在尝试避免使用 for-each 循环,因为需要尽可能优化,并且我想知道是否可以使用 lodash mappers 或其他类似的函数来完成?
已经有一些解决方案从这个阶段,我得到了(作为这里的解决方案),但我想找到一个特定于我的“包含类型为数组的属性的数组或对象”的问题的解决方案。