Skip to content
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

.valueOf does not work properly with utc and timezone plugins #2533

Open
fiarabbit opened this issue Dec 25, 2023 · 1 comment
Open

.valueOf does not work properly with utc and timezone plugins #2533

fiarabbit opened this issue Dec 25, 2023 · 1 comment

Comments

@fiarabbit
Copy link

fiarabbit commented Dec 25, 2023

Describe the bug
When NodeJS is configured The combination of utc and timezone plugins does not handle .valueOf function properly

Code to reproduce

process.env.TZ = 'Europe/Amsterdam';

await import('dayjs').then(m => {dayjs = m.default;});
await import('dayjs/plugin/arraySupport.js').then(m => {arraySupport = m.default;});
await import('dayjs/plugin/timezone.js').then(m => {timezone = m.default;});
await import('dayjs/plugin/utc.js').then(m => {utc = m.default;});

dayjs.extend(utc);
dayjs.extend(timezone);
dayjs.extend(arraySupport);

var withoutTimezone = dayjs.utc([2021, 1, 26, 19, 13, 55, 751]);
console.log(withoutTimezone.format()); // 2021-02-26T19:13:55Z
var tenHoursBefore = withoutTimezone.clone().utcOffset(10, true);
console.log(tenHoursBefore.format()); // 2021-02-26T19:13:55+10:00

var diffInHours = (withoutTimezone.valueOf() - tenHoursBefore.valueOf()) / (1000 * 60 * 60);
console.log(diffInHours); // Error: 9 hours, Expected: 10 hours

Expected behavior
When utc.utcOffset returns dayJs object without local host machine's timezone.

Information

  • Day.js Version [e.g. v1.0.0] : v1.11.10
  • OS: [e.g. iOS] : Mac OS X
  • Browser [e.g. chrome 62] : Not applicable
  • Time zone: [e.g. GMT-07:00 DST (Pacific Daylight Time)] : GMT+09:00 (Asia/Tokyo)
@fiarabbit
Copy link
Author

maybe fixed by #2532

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

No branches or pull requests

1 participant