From f0d299cc72e3abc92dd08fd63e97755f091cc5f0 Mon Sep 17 00:00:00 2001 From: Yurim Date: Fri, 25 Oct 2024 18:34:24 +0900 Subject: [PATCH] =?UTF-8?q?[Add,=20Feat]=20#6=20-=20date=20=EC=83=9D?= =?UTF-8?q?=EC=84=B1,=20str=20=EB=B3=80=ED=99=98=20=ED=95=A8=EC=88=98=20?= =?UTF-8?q?=EC=83=9D=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Week2/Extensions/Date+Extension.swift | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 35-seminar/Presentation/Week2/Extensions/Date+Extension.swift diff --git a/35-seminar/Presentation/Week2/Extensions/Date+Extension.swift b/35-seminar/Presentation/Week2/Extensions/Date+Extension.swift new file mode 100644 index 0000000..ba812d0 --- /dev/null +++ b/35-seminar/Presentation/Week2/Extensions/Date+Extension.swift @@ -0,0 +1,35 @@ +// +// Date+Extension.swift +// 35-seminar +// +// Created by 김유림 on 10/25/24. +// + +import Foundation + +extension Date { + static func form(year: Int, month: Int, day: Int) -> Date? { + var dateComponents = DateComponents() + dateComponents.year = year + dateComponents.month = month + dateComponents.day = day + + return Calendar.current.date(from: dateComponents) + } + + static func formattedDate(date: Date?) -> String { + guard let inputDate = date else { return "날짜 없음" } + + let currentYear = Calendar.current.component(.year, from: Date()) + let inputYear = Calendar.current.component(.year, from: inputDate) + let yearDifference = currentYear - inputYear + + guard yearDifference > 0 else { + let dateFormatter = DateFormatter() + dateFormatter.dateFormat = "M월 d" + return dateFormatter.string(from: inputDate) + } + + return "\(yearDifference)년 전" + } +}