Javascript 对象数组中相同值的计数
假设我有一个对象数组,如下所示:Javascript 对象数组中相同值的计数,javascript,Javascript,假设我有一个对象数组,如下所示: const details = [{"book":"harry","part":1},{"book":"harry","part":2},{"book":"harry","part":3}, {"book":"lotr&
const details = [{"book":"harry","part":1},{"book":"harry","part":2},{"book":"harry","part":3},
{"book":"lotr","part":1},{"book":"lotr","part":2},{"book":"lotr","part":3}]
我可以通过下面的方法得到一本同名书的数量
const eachBookCount = details.reduce((acc, item) => {
const key = item.book
if (!acc.hasOwnProperty(key)) {
acc[key] = 0
}
acc[key] += 1
return acc
}, {})
这就给了O/p:{harry:3,lotr:3}
但我想做的是用一个常数2乘以每一个计数,方法和我用的相同
所以预期的O/p是:{harry:6,lotr:6}
我很困惑,我怎么能用我过去计数的方法和常数2相乘
如果有人需要进一步的信息,请告诉我。我认为您可以将acc[key]的计数器+1替换为您想要的数字,例如2 const eachBookCount=details.reduceacc,item=>{ const key=item.book 如果!acc.hasOwnPropertykey{ acc[键]=0 } 常数numberYouWant=2 acc[键]+=您想要的号码 返回acc }, {}
我想你可以用你想要的数字替换acc[key]的计数器+1,例如2 const eachBookCount=details.reduceacc,item=>{ const key=item.book 如果!acc.hasOwnPropertykey{ acc[键]=0 } 常数numberYouWant=2 acc[键]+=您想要的号码 返回acc }, {}
当您从每个ookcount读取计数值时,是否可以在单独的步骤中乘以2?当您从每个ookcount读取计数值时,是否可以在单独的步骤中乘以2?是的。你完全正确。非常感谢你欢迎光临@SivaPradhanYes。你完全正确。非常感谢你不客气@SivaPradhan