**题目:**The Coupon Code
地址:https://www.codewars.com/kata/the-coupon-code/javascript
分析:
题目本身并不难,就是一个字符串的比较以及时间的比较,这里的时间是以字符串的形式传入的,没有办法直接比较,所以考虑转换为毫秒的形式来进行比较。
1. 方法一
function checkCoupon(enteredCode, correctCode, currentDate, expirationDate){
return enteredCode === correctCode && (new Date(currentDate).getTime() <= new Date(expirationDate).getTime()) ? true : false
}
这里使用了日期字符串来创建一个新的日期对象,然后利用Date.getTime()
方法来获取日期对应的毫秒数。
方法没问题,但是判断的方法有点问题:更优的方法是利用Date.parse()
方法直接获取毫秒数。
2. 方法二
function checkCoupon(enteredCode, correctCode, currentDate, expirationDate){
return enteredCode === correctCode && Date.parse(currentDate) <= Date.parse(expirationDate)
}