es6对象取值问题

ES6取值问题

clipboard.png

想要取dateline的值,但是104这个数字是请求得到的id值,并且可能会有多个,
0是数组,也有可能有多个,需要遍历展现出来,类似时间轴

阅读 3.7k
2 个回答

我的理解是你想从类似

{
    104: [
        {dateline: "xxx"},
        {dateline: "yyy"}
    ],
    105: [
        {dateline: "aaa"},
        {dateline: "bbb"}
    ]
}

的对象中提取出["xxx", "yyy", "aaa", "bbb"]

如果是的话,首先可以尝试使用flatMap,可能IE和Edge不支持

Object.values(obj).flatMap(x => x.map(y => y.dateline))

如果flatMap用不了,可以用reduce处理下

Object.values(obj)
    .map(x => x.map(y => y.dateline))
    .reduce((prev, cur) => prev.concat(cur), [])

暂时使用的url上的id进行处理,id放在this.props里面,但是这只是暂时解决问题,还有一个大的数据要处理

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进