当我打印时:
2017-02-13T22:55:01.395Z
我明白了:console.log(from.getHours())
顺便提一下23:55。为什么会出现一小时的不匹配?
当我这样做时:
23
我做对了(let popOver = navController.popoverPresentationController
popOver?.delegate = self
popOver?.sourceView = self.view
//popOver?.sourceRect = CGRect(x:0, y: 0,width: self.view.frame.width,height: self.view.frame.height)
popOver?.permittedArrowDirections = UIPopoverArrowDirection(rawValue: 0)
self.present(navController, animated: true, completion: nil)
)这很好。发生了什么事?
答案 0 :(得分:1)
您问题中打印的from
的字符串表示形式以UTC表示,您可以通过尾随Z
来表示。
但是,from
还能够表达本地时间内部代表的时间点,根据您的时区:{{1} }
同样,from.toLocaleString()
会在本地时间内返回时间小时。
这意味着您的当地时间比UTC早1小时,例如在西欧(虽然DST没有生效)。
换句话说:你得到的输出是按照设计的。