gpt4 book ai didi

javascript - 日期对象 Javascript 在使用毫秒时创建错误的时间

转载 作者:行者123 更新时间:2023-12-03 11:53:57 25 4
gpt4 key购买 nike

我遇到了一个有趣的问题。我正在编写一个小型家庭自动化工具并将设备信息写入 sqlite 数据库。

我还将最后一次生命检查保存为字符串“YYYY-MM-DD hh:mm.ms”。

重新启动程序时,我从数据库读取值并希望将它们保存到我的类中。

所以我从数据库中读取一个带有时间戳的字符串,称为lastLck并解析不同的参数:

var yr1 = parseInt(lastLck.substring(0,4));
var mon1 = parseInt(lastLck.substring(5,7));
var dy1 = parseInt(lastLck.substring(8,10));

var h1 = parseInt(lastLck.substring(11,13));
var m1 = parseInt(lastLck.substring(14,16));
var ms1 = parseInt(lastLck.substring(17,20));

var newDate = new Date(yr1, mon1, dy1, h1, m1, ms1);

但这不会获得以毫秒为单位的正确日期时间。我尝试了两种设备,并且总是得到四舍五入的时间:

String from database: ++ Compare ++: 2014-08-05 16:40.86
Dump from new Date Object: ++ Compare ++: 2014-08-05 16:41.0
Dump of parameters: ++ Compare ++: 2014-8-5 16:40.86
Dump of newDate.ToLocaleString() ++ Compare ++: Fri Sep 05 2014 16:41:26 GMT+0200 (CEST)

++ Compare ++: 2014-08-05 16:40.101
++ Compare ++: 2014-08-05 16:41.0
++ Compare ++: 2014-8-5 16:40.101
++ Compare ++: Fri Sep 05 2014 16:41:41 GMT+0200 (CEST)

谁能解释一下这种行为以及我如何获得对象中的确切日期?+

最佳答案

您应该能够简单地将日期的字符串解释传递到日期构造函数中:

var date = new Date(lastCheck);

MDN Date Time文档解释得很好。

关于javascript - 日期对象 Javascript 在使用毫秒时创建错误的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25689173/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com