需求:
在做订单发布者的撤销功能时涉及到一分钟内可以无责撤销已发布订单,数据库表里面当时存储的时间为字符串类型导致了计算时间的问题
用到的方法:
-
在 JavaScript 中使用 new Date() 函数将字符串转换为日期
-
在 JavaScript 中使用 Date.parse() 函数将字符串转换为日期
函数解释:
- 没有参数作为参数。如果未将任何参数传递给 new Date() 函数,则 new Date()将返回当前系统日期和时间,包括本地系统时间中的时区信息。
- 传递字符串日期。new Date(‘2018-12-3’) 它可以将以字符串格式传递的日期作为参数转换为日期格式。
- Date.parse() 是转换字符串日期的备选方案。它返回一个数字值而不是日期对象。它类似于时间戳格式,区别在于 Date.parse() 返回毫秒值,而不是秒。
解决方式
使用 Date.parse() 函数将字符串转换为日期,首先利用得到的毫秒数/1000得到发布时的时间戳,然后利用new Date().getTime获取现在的时间戳进行比较
if(new Date().getTime()-Date.parse(orderReceiveTime)<60*1000){
}
小白懂得不是很多,有任何错误欢迎各位积极指出!!!