【问题标题】:How to make a new object in an array如何在数组中创建一个新对象
【发布时间】:2021-04-11 16:52:39
【问题描述】:

我有一个自动完成功能,当用户点击它时,它会将值添加到标签和值键的末尾。

我有一个这样的数组对象:

我想像这样转换我的数组对象:

{label: "8", value: "8"}
{label: "10", value: "10"}
{label: "9", value: "9"}

我尝试过这样改造它:

  const edit = scheduleFieldData['project'].split(/,(?=")/).map(x => ({label: x, value: x}))

但是我得到了这个:

    [
       {"label":",8,10,9","value":",8,10,9"}
    ]

任何 JS 大师都知道如何做到这一点?非常感谢您的帮助!

scheduleFieldData['project'] 的值返回一个字符串:

,8,9

【问题讨论】:

  • 你能澄清一下吗,我不明白你有什么作为条目和你需要什么作为输出
  • 我有一个自动完成功能,当用户点击它时,它会将值添加到标签和值键的末尾,如果有帮助的话!
  • 你能把你的条目显示出来吗
  • 我也想看看scheduleFieldData['project']的值
  • @stackblunter 如果没有所有信息,我们将无法帮助您

标签: reactjs


【解决方案1】:

只需用“,”分隔并过滤未定义或空值。您甚至可以添加排序。

const test = ',8,10,9';

const edit = test.split(",").filter(x => x).sort((a,b) => a - b).map(x => ({
  label: x,
  value: x
}));

console.log(edit)

【讨论】:

  • 太棒了,谢谢!!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-05-07
  • 1970-01-01
  • 2013-11-27
  • 2020-06-27
  • 1970-01-01
  • 1970-01-01
  • 2020-10-02
相关资源
最近更新 更多