簡體   English   中英

如何將今天的日期與 Swift 中的另一個日期進行比較?

[英]How can I compare today's date with another date in Swift?

通過將今天的日期與事件發生的日期與 function 進行比較,我想檢查事件日期是否已過。

    func isEventPast() -> Bool? {
       let utc = eventDetailModel?.utcTimezone?.utc ?? ""
       let startTimeLocal: String = serverToLocal(dateStr: eventDetailModel?.startTime ?? "", timezone: utc) ?? ""
       return Date() > startTimeLocal.getDayMonDateFormat() ? true : false
    }

我為此檢查編寫了 function,但即使日期已過,它也會返回 false。 這可能是什么原因?

  • getDayMonDateFormat() function 是返回字符串

Date對象是可比較的。 您可以直接在它們上使用“=”、“>”和“<”等表達式。

如果您想知道某個日期是否已過,只需將它們作為日期進行比較。 不要搞砸日期格式化程序、時區或任何其他內容。

最好將服務器的開始日期加載為 Unix 紀元時間的數字偏移量。 然后您可以避免日期字符串轉換、時區等。

如果您必須將服務器開始日期加載為字符串,請使用包含與 UTC 的偏移量的“Internet 日期字符串”。 將您的輸入日期字符串轉換為Date ,然后使用if Date() > serverStartDate類的代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM