【发布时间】:2021-02-11 21:27:01
【问题描述】:
这里的程序员朋友,出于某种原因,我花了两天时间,但我无法正确完成此操作,请帮助我。 我有一个对象,每个键都有这样的数组:
var arraysObject = {
"North American": [
"CONUS",
"NAMER",
"CONUS/AK",
"US-NC",
"US-NE",
"US-NW",
"US-SC",
"US-SE"
],
"Oconus": [
"ALASKA",
"GUAM",
"HAWAII",
"POLAR",
"US-SAMOA"
],
}
我有一个已选择区域的列表,如下所示
var listOfAreas = ["CONUS", "GUAM","US-SAMOA"]
我想创建以下对象:
var result = [{
"North American":"CONUS",
"Oconus": "GUAM"
},
{
"North American": "",
"Oconus":"US-SAMOA"
}]
请注意,仅当最后一个键已满并尽可能填充对象时,它才会创建一个新对象。在我的实现中,它为每个单独的字符串创建一个对象,并将其分配给键,然后使用 .map 推送它 这行不通。我希望它相应地填充每个对象并仅在必要时创建一个新对象。感谢你的帮助。 最好的, 一个假人。
【问题讨论】:
-
[CONUS, NAMER]这样的两个“北美”结果会发生什么情况?因为似乎“唯一”值应该是键,而不是相反。 -
我无法理解您尝试创建的数据结构。你能澄清一下吗?
-
数据结构是一个对象数组,基本上是第一个对象的逆,只有所选数组中的字符串。这用于创建带有引导程序的表,并且需要采用该格式。
-
@RandyCasburn CONUS 是北美数组中数组列表中唯一选定的字符串
-
@TadewosBellete - 是的,我了解您提供的示例。我的问题与可能包含来自北美的两个元素的不同输入数组有关。在您的应用中会发生这种情况吗?
标签: javascript arrays sorting object