すでに更新されて修正済みのようですが
こんなニュースがありました
ちなみにくら寿司アプリから通知が来たので
知っていましたがスルーしてました
今朝になって日付絡みのバグ修正のために調べていたら
ドンピシャのサンプルコードを見つけました
まさにこの地雷を全力で踏み抜いている現象です
let formatter = DateFormatter()
let now = "2017/8/12"
formatter.dateFormat = "yyyy/MM/dd"
formatter.locale = Locale(identifier: "ja_JP")
let date = formatter.date(from: now)
こんな感じでlocaleにja_JPを指定したんじゃないかと予想します
知見ないとやっちゃいそうな感じがする・・・
おそらく西暦2020年が平成2020年もしくは令和2020年として扱われた結果
西暦に変換されて西暦4038年または西暦4008年と表示されたんでしょう
en_US_POSIXを指定すべきみたいですが
どの言語にしても日付関連はたくさんのバグを生みますね
en_US_POSIXのことはこの記事がいいかな?
今日も勉強になった!