Current Week Start and End Date

后端 未结 16 1374
轮回少年
轮回少年 2020-11-30 01:56

I want to get the current week start and end date and I also want to use the previous week start and end date and next week of the start and end date in current month.

16条回答
  •  我在风中等你
    2020-11-30 02:30

    Here is Swift 3 Version:-

    extension Date {
        var startOfWeek: Date? {
            let gregorian = Calendar(identifier: .gregorian)
            guard let sunday = gregorian.date(from: gregorian.dateComponents([.yearForWeekOfYear, .weekOfYear], from: self)) else { return nil }
            return gregorian.date(byAdding: .day, value: 1, to: sunday)
        }
    
        var endOfWeek: Date? {
            let gregorian = Calendar(identifier: .gregorian)
            guard let sunday = gregorian.date(from: gregorian.dateComponents([.yearForWeekOfYear, .weekOfYear], from: self)) else { return nil }
            return gregorian.date(byAdding: .day, value: 7, to: sunday)
        }
    }
    

    You can get the week start date and end date like this :

    let startWeek = Date().startOfWeek
    let endWeek = Date().endOfWeek
    
    print(startWeek ?? "not found start date")
    print(endWeek ?? "not found end date") 
    

提交回复
热议问题