Skip to content

Fixes bug with difference dates in the same second returning true #12

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jun 17, 2017
Merged

Conversation

KamalAman
Copy link
Contributor

When you check if two dates are equal to each other you run the following code:

if ((0, _utils.isDate)(l) || (0, _utils.isDate)(r)) {
if (l.toString() == r.toString()) return {};
return r;
}
The issue here is that new Date(1).toString() === new Date(2).toString() //true which is obviously false.

The issue here is that toString formats the date object into a human readable format which does not take milliseconds into account Mon Sep 28 1998 14:36:22 GMT-0700 (PDT)

What you should be using instead is .valueOf() which converts the date into an epoch time. This is also much more preferment than toStirng: roughly 25x faster in node 7.

@coveralls
Copy link

Coverage Status

Coverage remained the same at 100.0% when pulling a591ca6 on KamalAman:master into 49e6acf on mattphillips:master.

@mattphillips
Copy link
Owner

Hey @KamalAman thanks for spotting this and sending a PR with the fix 😄

@mattphillips mattphillips merged commit 8a109e7 into mattphillips:master Jun 17, 2017
@KamalAman
Copy link
Contributor Author

No worries, thanks for accepting so quickly. I would appreciate an update to NPM asap when convenient for you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants