У меня есть есть запрос, я не понимаю дословно как работает map в данном случае.
Переменная или функция friendId не создавались мной и ранее не фигурировали
Прошу разжевать что выполняет map
router.get("/timeline/all", async (req, res) => {
try {
const currentUser = await User.findById(req.body.userId); //из тела запроса берем айди юзера и ищем в модели юзера
const userPosts = await Post.find({ userId: currentUser._id }); // из модели поста ищем айди автора поста (в каждом посте указываем userId),
//которые совпадаю с юзером в теле запроса
const friendPosts = await Promise.all(
currentUser.followings.map((friendId) => { //тут не ясно откуда взялся friendId
return Post.find({ userId: friendId });
})
);
res.json(userPosts.concat(...friendPosts)) //объединяем массивы
} catch (err) {
res.status(500).json(err);
}
});