Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
299 views
in Technique[技术] by (71.8m points)

node.js - How do I find out the total number of items in a collection? mongoose

I have 100 items in the collection, each item has a "money" field, I need to get the total amount of money from all, preferably without crutches. i don't know how to did it.

const allMoney = async () => {
    let count = 0;
    await User.find({}).sort({ money: -1 }).forEach(plr => { count+=plr.money });
    return count;
}

"user is my model"


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Replace your forEach with reduce

Here an example how you can use it. To do a snippet I used some dummy values.

let collection = [4, 3, 2, 1, 5, ,6 ,7]

let result = collection.reduce((acc, val) => {
acc += val;
return acc;
}, 0)

console.log(result);

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...