【问题标题】:Iteration inside an object in react.jsreact.js中对象内部的迭代
【发布时间】:2017-08-10 23:15:32
【问题描述】:

我是 react 和 javascript 的新手,我在处理一项任务时遇到了一些困难。让我们开始吧。我有这样的数组: clients = ["Alex", "Jimmy"] 然后我使用以下方式创建另一个数组:

for (var i = 0; i < clients.length; i++) {
  var portf = Object.keys(obj.portfolios);
}

因此,每个 i 都会使用以下值创建一个 portf 数组: 对于 i = 0,端口 f = 1,2,3,对于 i = 1,端口 f = 4,5,6 我想使用迭代创建具有以下格式的对象数组:

var ops = [{

    label: "Alex",
    options: [
       {value: 1}, 
       {value: 2}, 
       {value: 3}
    ],
    label: 'Jimmy',
    options: [
       {value: 4}, 
       {value: 5}, 
       {value: 6}
    ]

你知道怎么做吗?

【问题讨论】:

  • Object.keys(obj.portfolios) 对于每个i 都是相同的。你如何得到1,2,34,5,6
  • 我有一个深度嵌套的地图结构。客户端数组包含地图的键。 portf 是使用以下过程创建的: for (var i = 0; i

标签: javascript reactjs object iteration


【解决方案1】:

你可以使用Array.prototype.map:

const opts = clients.map(client => {
  const obj = clients.getIn([client]);
  const portf = Object.keys(obj.portfolios);

  return {
    label: client,
    options: portf.map(value => ({ value }))
  }
})

【讨论】:

  • 不错!非常感谢。这比我想象的要容易:P
猜你喜欢
  • 2011-07-22
  • 1970-01-01
  • 2018-11-25
  • 1970-01-01
  • 1970-01-01
  • 2012-06-18
  • 2017-04-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多