【问题标题】:Convert string array to object with one key一键将字符串数组转换为对象
【发布时间】:2022-11-10 19:06:45
【问题描述】:

我正在尝试创建 urlParams 对象。它接收两个字符串和一个字符串数组:

id="123"
provider="456"
additionals=["564", "566", "5566"]

我想将数组转换为对象,其中“附加”作为每个对象的键。最后我应该是这样的:

const urlParams = {
  id: "123",
  provider: "456",
  additionals: "564",
  additionals: "566",
  additionals: "5566"
}  

我怎样才能用 lodash 或任何其他简单的方法来实现这一点?我尝试过使用_.keyBy(additionals),但这导致键和值是相同的。

【问题讨论】:

  • 你要求的是不可能的。对象是唯一键与值的关联。您不能拥有相同密钥的“多个”。

标签: javascript arrays object lodash


【解决方案1】:

您不能拥有这样的对象,因为每次您声明键“附加”时,它都会覆盖以前的值:

// creating this
{
  additionals: "564",
  additionals: "566",
  additionals: "5566"
}

// automatically converts to this (overwriting the key value with the last):
{
  additionals: "5566"
}

【讨论】:

    猜你喜欢
    • 2021-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-09
    • 1970-01-01
    相关资源
    最近更新 更多