最近在研究react,遇到一个问题,我在mongo中储存了一组数据,数据格式是这样
{
_id: 1,
items: [
{ name: "哇哈哈", amount: 10 },
{ name: "脉动", amount: 11 },
{ name: "百事", amount: 15 }
]
}
{
_id: 2,
items: [
{ name: "哇哈哈", amount: 10 },
{ name: "脉动", amount: 11 },
{ name: "百事", amount: 15 }
]
}
{
_id: 3,
items: [
{ name: "哇哈哈", amount: 10 },
{ name: "脉动", amount: 11 },
{ name: "百事", amount: 15 }
]
}
现在我想把每一个name的amount累加输出为一个新的数组,比如把name为”哇哈哈“的商品都累加输出到一个新的数组中,在新的数组中的第一项应该为30,但是现在始终找不到合适的方法做到,用map来遍历输出console的的结果数组中的每一项都是undefined,实在是想不通啊,google也没有找到方法解决,诸位有什么好的办法吗?
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
你这是object,不是array,当然不能用map来遍历。
用for in来做循环吧
您的JSON嵌套的可真够深的,可以用如下的代码来遍历:
你用react应该是支持es6吧,我这是es6语法;
需要嵌套计算一下:
//假定是b是服务端返回的复杂结构数组
b.map((_,index)=>b.map(i=>i.items[index].amount).reduce((i,j)=>i+j))
楼主解决了吗,我也遇到了这个问题,可以分享一下吗?谢谢楼主