Important Notice: We're experiencing email notification issues. If you've posted a question in the community forums recently, please check your profile manually for responses while we're working to fix this.

Iskanje po podpori

Izogibajte se prevarantski tehnični podpori. Nikoli vam ne bomo naročili, da pokličete telefonsko številko ali nam pošljete osebne podatke. Sumljivo dejavnost prijavite z gumbom »Prijavi zlorabo«.

Več o tem

Date.prototype.toJSON()

  • 2 odgovora
  • 0 ima to težavo
  • 17 ogledov
  • Zadnji odgovor od A Ka

more options

Unfortunately using a date type toJSON() result is not accurate. It first apply client timezone and then convert it to json string. In my scenario I am simply read from an API which return a none standard datetime string without its timezone (like "2020-11-21 00:00:00"), Then I try to convert it to a date using new Date("2020-11-21 00:00:00"). Then I use it in another web service but it apply my client timezone when I use JSON.stringify() method (or toJSON()). Does this behaviour is intentionally?


I read the other same question but I am not okay with it. https://support.mozilla.org/en-US/questions/1414380

Unfortunately using a date type toJSON() result is not accurate. It first apply client timezone and then convert it to json string. In my scenario I am simply read from an API which return a none standard datetime string without its timezone (like "2020-11-21 00:00:00"), Then I try to convert it to a date using new Date("2020-11-21 00:00:00"). Then I use it in another web service but it apply my client timezone when I use JSON.stringify() method (or toJSON()). Does this behaviour is intentionally? I read the other same question but I am not okay with it. https://support.mozilla.org/en-US/questions/1414380

Vsi odgovori (2)

more options

I started to Use (var myDate=new Date("2020-11-21 00:00:00");myDate.setHours(myDate.getHours()+6)) to compensate that effect!

more options

As I read in the web, Date constructor does not cover timezone but getters of date object consider client time zone. Altough I think to json is not a simple client side getter since it has z at the end. The same think apply to toISOString() method which also consider client time zone! Of course the other alternative for my scenario is myDate.format("yyyy-MM-ddTHH:mm:ssZ")