比较相同日期会返回OrderedAscending

时间:2016-02-09 16:41:46

标签: ios swift nsdate

鉴于此功能:

    func isLessThanDate(dateToCompare: NSDate) -> Bool {
        var isLess = false
        print(self)
        print(dateToCompare)
        if self.compare(dateToCompare) == NSComparisonResult.OrderedAscending {
            isLess = true
        }
        return isLess
    }

我获得OrderedAscending的日期相同。 enter image description here

1 个答案:

答案 0 :(得分:2)

如果您想忽略毫秒差异,可以在两个日期使用floor,但不知道代码的确切意图,我不确定这是不是真的是什么你要。有关使用NSCalendar函数的替代方法,请参阅此答案的评论。

顺便说一下,如果直接返回布尔值而不是使用isLess变量,则可以简化函数:

func isLessThanDate(dateToCompare: NSDate) -> Bool {
  return self.compare(dateToCompare) == NSComparisonResult.OrderedAscending
}