Unix Epoch time to Date returns 奇怪的结果

Unix Epoch time to Date returns strange results

let postDate = Date(timeIntervalSince1970: feeds[indexPath.row].creationDate)
print("UNIX TIME: \(feeds[indexPath.row].creationDate)")
print("DATE: \(postDate)")

第一个打印命令正在打印

UNIX TIME: 1511530358000.0, UNIX TIME: 1511418618000.0, UNIX TIME: 1511002194000.0

第二个打印命令正在打印

DATE: 49868-06-28 07:53:20 +0000, DATE: 49864-12-13 01:00:00 +0000, DATE: 49851-10-03 07:40:00

为什么我得到错误的日期结果?当我在此 website 中测试相同的 unix 时间戳时,它给了我正确的答案。我正在使用 xcode 9.1 9B55

您的 creationDate 以毫秒为单位,而不是秒。您需要除以 1000。

let postDate = Date(timeIntervalSince1970: feeds[indexPath.row].creationDate / 1000)