【问题标题】:why am i getting <1 empty item> when using mapping in JavaScript为什么我在 JavaScript 中使用映射时得到 <1 个空项>
【发布时间】:2022-10-07 14:17:57
【问题描述】:

我使用 JSON 返回一个数组。

杰森:

const data = [{
  \"week\": 1,
  \"lost\": 10,
  \"recovery_timespan\": [{
    \"week\": 2,
    \"count\": 1
  }, {
    \"week\": 3,
    \"count\": 0
  }],
   \"netLost\": 10,
  \"netReturned\": 20
}, {
  \"week\": 2,
  \"lost\": 7,
  \"recovery_timespan\": [{
    \"week\": 3,
    \"count\": 1
  }, {
    \"week\": 4,
    \"count\": 3
  }],
  \"netLost\": 30,
  \"netReturned\": 200
}, {
  \"week\": 3,
  \"lost\": 8,
  \"recovery_timespan\": [{
    \"week\": 4,
    \"count\": 1
  }],
  \"netLost\": 50,
  \"netReturned\": 40
}];

我需要用lost,counts of recovery_timespan,netLost,netReturned 将数据放入一个数组中。

预期输出:

[ [ 10, 1, 0, 10, 20 ],
  [ 7, 1, 3, 30, 200 ],
  [ 8, 1, 50, 40 ] ]

我的做法:

const result = data.map(({lost, recovery_timespan,netLost,netReturned}) => [
  lost,
  ...recovery_timespan.map(({count}) => count),
  ,netLost,netReturned
]);

console.log(result);

这个返回数组带有&lt;1 empty item&gt;

[ [ 10, 1, 0, <1 empty item>, 10, 20 ],
  [ 7, 1, 3, <1 empty item>, 30, 200 ],
  [ 8, 1, <1 empty item>, 50, 40 ] ]

这里有什么问题?

    标签: javascript arrays json


    【解决方案1】:

    不完全确定,但也许试试这个。

    ...recovery_timespan.map(({count}) => count.count)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-25
      相关资源
      最近更新 更多