gpt4 book ai didi

ios - "Calendar.current.isDate"日期参数是否需要使用同一时区的日期?

转载 作者:行者123 更新时间:2023-11-28 13:30:34 27 4
gpt4 key购买 nike

我对 Calendar.current.isDate 这个函数有疑问。

let calendar = Calendar.current
print("locale : \(calendar.locale)") //Optional(en_US (current))
print("timeZone : \(calendar.timeZone)") //Asia/Taipei (current) UCT+8

if calendar.isDate(latestDate, inSameDayAs: nowDate) {
// latestDate = 2019-08-08 03:17:56 +0000
// nowDate = 2019-08-08 03:47:43 +0000
// Doing something
}

我带了两个日期参数latestDatenowDate,但这两个参数时区是UCT+0。
我的日历时区是 UCT+8。

尽管时区不同,但比较它们是同一天是否合法?

最佳答案

Date 没有时区。它们是一个绝对时间点。当您打印日期时,系统必须使用一些时区来为显示的值提供上下文,并且它使用 UTC+0,但是 2019-08-08 03:17:56 +0000 和 2019-08-08 11:17: 56 +0800 是同一时间

您的 calendar 实例将解释其时区中的两个 Date

因此,如果这两个 Date 都在日历时区的同一天(当前设备时区),则您的 if 将为 true对于您的代码)。

关于ios - "Calendar.current.isDate"日期参数是否需要使用同一时区的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57404986/

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