【发布时间】:2017-06-29 11:01:41
【问题描述】:
有很多关于这个主题的问题,但我找不到直接解决我遇到的问题的答案。
这是一个:Find common elements in 1 array using Javascript
第一个区别是我有一个不同类型的数组,它的元素是对象,键值对,其中键是字符串,值是整数数组。
第二个区别是数组是动态的,这意味着有时它可能有零个元素,有时它可能有3个对象元素。
我正在分享下面的示例数组:
const array = [
{"key1":[1,2,3]},
{"key2":[2,3,4]},
{"key3":[2,5,6]},
];
第三个区别是元素的顺序很重要,因此最终结果应该输出所有后续数组中存在的第一个元素的值。
结果应该是:
const result = [2];
因为 2 是这三个元素中唯一的公共整数。
如前所述,数组有时可能只有 1 个或 2 个元素,或者没有元素,应该考虑这些情况。
编辑 1:在 cmets 数组的值是唯一的
【问题讨论】:
-
每个对象中有多个键还是只有一个,为什么?
-
您的样本数组是您将使用的数据类型的一个很好的例子吗?
-
@Jonasw 每个对象中只有一个键,原因是我正在使用多个下拉列表,其中每个选项值对应于数组值。选择那些下拉目时,我必须找到值的交点。希望我能回答你的问题。
-
@evolutionxbox 是的,这是一个很好的例子,请阅读上面的评论以更好地了解情况
-
@bakhtiiar muzakparov 很好,但动态键总是一个非常非常糟糕的主意(难以使用,难以为解析器优化)。因此可能会将您的结构更改为 {id:"key1", values:[1,2,3]}
标签: javascript arrays ecmascript-6