【问题标题】:Converting Array stored as a String to a List object in JavaString将存储为 String 的 Array 转换为 Java String 中的 List 对象
【发布时间】:2021-11-16 21:37:16
【问题描述】:

我有以下列表:

nested_list = [
  ["[63]"],
  ["[61]"],
  ["[7]"],
  ["[63]"],
  ["[80, 18]"],
  ["[80, 43, 18, 20]"]
]

我知道这是一团糟,但这是我目前必须处理的数据 我需要它是这样的:

[63, 61, 7, 63, 80, 18, 80, 43, 18, 20]

所以基本上将其转换为数字列表。使用尽可能少的循环是否可行?

我使用了 flat() nested_list .flat(2) 并最终得到以下结果:

[ '[63]', '[61]', '[7]', '[63]', '[80, 18]', '[80, 43, 18, 20]' ]

还尝试了 this 之后的 reduce + concat,但由于它是一个字符串,所以它不起作用,我不知道从哪里开始。

【问题讨论】:

    标签: javascript arrays string list


    【解决方案1】:

    .flatMap() + JSON.parse() 可以很容易做到这一点

    const nested_list = [
      ["[63]"],
      ["[61]"],
      ["[7]"],
      ["[63]"],
      ["[80, 18]"],
      ["[80, 43, 18, 20]"]
    ];
    
    const result = nested_list.flatMap(JSON.parse);
    
    console.log(result)

    【讨论】:

    • 非常感谢!这真太了不起了!在这里学习吨:)
    猜你喜欢
    • 1970-01-01
    • 2021-09-17
    • 2018-09-06
    • 1970-01-01
    • 2011-02-02
    • 2020-06-10
    • 2022-01-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多