Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 出生日期:每个地方的出生日期相同吗?_Javascript_Java_Date_Utc - Fatal编程技术网

Javascript 出生日期:每个地方的出生日期相同吗?

Javascript 出生日期:每个地方的出生日期相同吗?,javascript,java,date,utc,Javascript,Java,Date,Utc,当前im存储用户自1970年1月1日起的出生日期(以毫秒为单位)。我是否必须确保每个国家的出生日期都相同,或者X国是11月11日,Y国是11月12日,这种情况是否常见 如果每个国家都有完全相同的出生日期,那么我如何确保我存储的毫秒始终指向每个国家的完全相同的月份?由您决定将选定的出生日期解释为哪个时区,以及在显示出生日期时使用哪个时区。在我看来,在将出生日期从时间戳转换为可读形式和存储时,如果您希望收集出生地的时区,那么始终使用出生地的时区是合乎逻辑的。否则,您可以始终使用GMT或任何其他时区作

当前im存储用户自1970年1月1日起的出生日期(以毫秒为单位)。我是否必须确保每个国家的出生日期都相同,或者X国是11月11日,Y国是11月12日,这种情况是否常见


如果每个国家都有完全相同的出生日期,那么我如何确保我存储的毫秒始终指向每个国家的完全相同的月份?

由您决定将选定的出生日期解释为哪个时区,以及在显示出生日期时使用哪个时区。在我看来,在将出生日期从时间戳转换为可读形式和存储时,如果您希望收集出生地的时区,那么始终使用出生地的时区是合乎逻辑的。否则,您可以始终使用GMT或任何其他时区作为约定。这将确保所有国家/地区的所有用户都能看到相同的出生日期,但建议在日期表示中附加时区,以防止混淆。当然,在创建要存储的时间戳时,您可以选择将日期解释为基于GMT的日期,然后使用用户定义的时区(可能是用户帐户的时区)呈现出生日期。在这种情况下,如果包含出生时间,则每个用户的日期和时间都会有所不同。

忽略一天中的时间 很少有人知道他们出生的时间。因此,不,这种详细程度通常不被跟踪。你在护照上看不到出生时间和出生时区等等。它们只跟踪日期值,不跟踪一天中的时间,也不跟踪时区

[P>调酒师、边境管制人员等使用本地当前日期计算年龄,没有试图考虑一天的时间或调整时区。考虑部分日差将被截断,忽略。

要从一个时区到另一个时区精确地调整某个时刻,您需要一个日期和一天中的某个时间。如果没有一天中的某个时间,你可能会有23-25个小时的时间来记录他们的出生

例如,24日午夜后几分钟在巴黎比UTC提前1或2小时出生的婴儿仍然是“昨天”,即比UTC晚4或5小时的蒙特勒尔23日。但如果出生时间是24日06:00,那么巴黎和蒙特利尔的出生日期都是相同的24日,但在不列颠哥伦比亚省温哥华和西雅图是“昨天”23日,那里的时钟比UTC晚7或8小时

SQL 在SQL中,使用类似于标准日期类型的数据类型

JAVA 在Java中,使用类型。要表示生日庆祝活动重复的月份和日期,请使用类

为了与数据库交互,符合JDBC 4.2的驱动程序应该能够通过PreparedStatement上的getObject和setObject方法直接与LocalDate一起工作。如果没有,请返回使用旧的java.sql.Date。添加到旧类的新方法有助于转换

ISO 8601 生成日期时间值的字符串表示形式时,请使用标准中定义的格式,如YYYY-MM-DD,ex:1960-07-11。适用于无年份的日期-年月日,例如:-07-11。java中的java.time类在解析和生成字符串时默认使用ISO 8601格式

一天中的强制时间 如果出于某种原因,您被迫在日期时间字段中输入一个仅限日期的值,则必须设置一天中的任意时间。中午是一种可能性。我建议将时间部分设置为一天中的第一个时刻

一天中的第一刻 请注意,第一个时刻并不总是00:00:00。夏令时DST和其他异常情况可能会影响某些时区的午夜。例如,一天中的第一个时刻可能是01:00:00。Java可以确定一天中适合特定时区的第一个时刻

ZoneId zoneId = ZoneId.of( "America/Montreal" );
LocalDate today = LocalDate.now( zoneId );
ZonedDateTime startOfToday = today.atStartOfDay( zoneId );

您使用的是什么语言?我使用UTC存储毫秒。但是当它们出现在UI中时,它们当然会被转移到本地时间。好的,现在我们知道你正在做一些UI的事情。JavaScript?也许是Angular或JQuery?我离你越来越近了吗?这很重要,因为任何阅读你的问题的人都可能不知道或者没有办法帮助你,因为你没有给出代码或者标签。我现在要更新标签。如果我输入我的出生日期为1月1日,然后在其他时区读取我的详细信息,我不希望它显示为12月31日。