Node.js 我如何使报价每天(从午夜到午夜)可赎回,而不是每24小时一次?
我试图了解如何修改我的“timeDiff”,以便我能够根据是否是新的一天以及是否是24小时来兑换。有什么建议吗Node.js 我如何使报价每天(从午夜到午夜)可赎回,而不是每24小时一次?,node.js,reactjs,postgresql,Node.js,Reactjs,Postgresql,我试图了解如何修改我的“timeDiff”,以便我能够根据是否是新的一天以及是否是24小时来兑换。有什么建议吗 let timeDiff = prevRedemp ? Math.floor((new Date - new Date(prevRedemp.createdAt)) / 1000 / 60 / 60) : undefined; // daily use } else if (discFreq === 1) { if (timeDiff >=
let timeDiff = prevRedemp ? Math.floor((new Date - new Date(prevRedemp.createdAt)) / 1000 / 60 / 60) : undefined;
// daily use
} else if (discFreq === 1) {
if (timeDiff >= 24 || prevRedemp === undefined) {
return this.models.Redemption.create({
UserUuid: userUuid,
DiscountId: discountId,
BusinessId: disc.dataValues.BusinessId,
locationId: locationId || null
}).then(redeemed => {
return this.models.BusinessRating.findOne({
where: {
UserUuid: userUuid,
BusinessId: disc.dataValues.BusinessId
}
}).then(rating => {
if (rating) {
return redeemed;
} else {
return this.models.Notification.create({
UserUuid: userUuid,
notifyDate: moment().format(),
notifyType: 'redemption',
RedemptionId: redeemed.id
}).then(() => redeemed);
}
});
})
} else {
return `Discount cannot be redeemed again for ${24 - timeDiff} hours`;
}
我不完全清楚您的最终问题是什么,但您可以在当前服务器时区中为下一个午夜边界创建日期对象,如下所示:
让midnt=新日期();
午夜设定时间(24);//将时间设置为下一个午夜边界
中期设置分钟数(0);//将分、秒、毫秒清除为零
中间设置秒(0);
midnt.SET毫秒(0);
log(midnt.toString())代码>这确实为我的问题提供了解决方案。非常感谢。