我正在为我们的CRUD函数的数据库表之一编写一些JavaScript,并且用于标识数据项的ID字段之一是日期。使用AJAX提取此数据时,它具有完整的JavaScript数据格式:Thu Apr 25 2019 00:00:00 GMT+0100 (British Summer Time)
。
这引起了问题,因为Kendo UI在发送后将其更改为UTC,在这种情况下,日期更改为4月24日,这意味着我们的后端代码找不到记录。
我试图解决此问题的方法是使用.toLocalDateString
更改此字段。这已经解决了我的问题,因为它似乎只是切断了有关时区的信息,并给了我DD/MM/YYYY
,后端接受了它。
我的问题是:如果该程序在美国东部使用,是否会产生预期的效果(忽略时区,只给我日期)。
由于我在英国,我们的时区当前是英国夏令时,这是原始数据所在的时区,这仅在我处于BST时才有效吗?如果我在美国东部标准时间(EST)落后5或6个小时,.toLocaleDateString
会导致一天倒数1吗?
我看了看文档,上面说的只是“使用本地约定”,对我来说含义不清楚。
编辑:
我从AJAX请求中得到了Mon May 13 2019 00:00:00 GMT+0100 (British Summer Time)
的回复。当我将其发送回去时,我将数据进行字符串化,并将其字符串化为:"2019-05-12T23:00:00.000Z"
,它位于UTC中,从而导致了问题。