Swift 获取当前时间戳 (秒级,毫秒级)
经常见到有人将 秒级 时间戳 以 Int 类型直接 *1000 来获取毫秒,这样的结果最后的3位数字都是0,获取到的结果不够精确。所以获取毫秒级时间戳有另外一种方式。
创建一个 Date 的 Extension,代码如下
extension Date {
/// 获取当前 秒级 时间戳 - 10位
var timeStamp : String {
let timeInterval: TimeInterval = self.timeIntervalSince1970
let timeStamp = Int(timeInterval)
return "\(timeStamp)"
}
/// 获取当前 毫秒级 时间戳 - 13位
var milliStamp : String {
let timeInterval: TimeInterval = self.timeIntervalSince1970
let millisecond = CLongLong(round(timeInterval*1000))
return "\(millisecond)"
}
}
使用
let millisecond = Date().milliStamp
print("当前毫秒级时间戳是 millisecond == ",millisecond)
let timeStamp = Date().timeStamp
print("当前秒级时间戳是 timeStamp == ",timeStamp)
/**
输出结果
当前毫秒级时间戳是 millisecond == 1524801851988
当前秒级时间戳是 timeStamp == 1524801851
*/