首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将数组对象中某些值的一部分从AWS MongoDB值中分离出来并映射到新数组中?

如何将数组对象中某些值的一部分从AWS MongoDB值中分离出来并映射到新数组中?
EN

Stack Overflow用户
提问于 2021-06-05 22:19:24
回答 1查看 48关注 0票数 0

实际上,我试图将值(userID、userName和userBirthday)从AWS MongoDB映射到数组对象中,我想比较一下用户的生日是今天还是今天。在MongoDB中,用户的生日(列名;dateOfBirth)以这种格式存储。“YYYY-MM-DDT00 00:00:00”所以我只想从这里得到月份值和日期值。但是我无法将这个值从数组中分割出来。它是如何做到这一点的,或者说是其他方式?我很难建立这个逻辑。因此,我们将非常感谢您的帮助!

代码语言:javascript
运行
复制
const allUsers = await helper.getAllUsers(organizationId); //get all user data
const allUserList = allUsers.Items.map(user => (
 { userId: user.id,
   userFullName: `${user.firstName} ${user.lastName}`,
   userBirthday: user.dateOfBirth 
}));
const thisDay = new Date().getMonth();
const thisMonth = new Date().getDate();

const birthdayUserList = allUserList.filter(
   user => ??????? === thisDay && ??????? === thisMonth
);

在最后一行代码中,我希望从userBirthday of allUserList获得日期和月份值&与thisDay & thisMonth进行比较。此外,我还附上了allUserList的内部外观。

代码语言:javascript
运行
复制
[
 { userId: 'xxxxxxxxxxxxxxx', userFullName: 'xxxxx  xxxx' }, userBirthday: 'YYYY-MM-DDT00:00:00'},
 { userId: 'xxxxxxxxxxxxxxx', userFullName: 'xxxxx  xxxx' }, userBirthday: 'YYYY-MM-DDT00:00:00'},
 { userId: 'xxxxxxxxxxxxxxx', userFullName: 'xxxxx  xxxx' }, userBirthday: 'YYYY-MM-DDT00:00:00'},
 { userId: 'xxxxxxxxxxxxxxx', userFullName: 'xxxxx  xxxx' }, userBirthday: 'YYYY-MM-DDT00:00:00'},
 .....
]
EN

Stack Overflow用户

回答已采纳

发布于 2021-06-07 13:34:06

代码语言:javascript
运行
复制
const allUsers = await helper.getAllUsers(organizationId); //get all user data
const allUserList = allUsers.Items.map(user => (
 { userId: user.id,
   userFullName: `${user.firstName} ${user.lastName}`,
   userBirthMonth: new Date(user.dateOfBirth).getMonth(),
   userBirthDate: new Date(user.dateOfBirth).getDate()
}));
const thisDay = new Date().getMonth();
const thisMonth = new Date().getDate();

const birthdayUserList = allUserList.filter(user =>
 user.userBirthMonth === currentMonth && user.userBirthDate === currentDate
);

或者,您可以在一起使用月份和日期,如下所示。

代码语言:javascript
运行
复制
{ userBirthday: `${new Date(user.dateOfBirth).getMonth()}-${new Date(user.dateOfBirth).getDate()} }

allUserList中&您应该存储上面提到的表单中的当前日期。

代码语言:javascript
运行
复制
const currentDate = `${new Date().getMonth()}-${new Date().getDate()}`

逻辑可以如下所示。

代码语言:javascript
运行
复制
const birthdayUserList = allUserList.filter( user => user.userBirthday === currentDate);
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67854345

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档