NSDate的扩展 如果只需要其中一个方法 可自行提取
extension NSDate {
/**
获取这个月有多少天
*/
func getMonthHowManyDay() ->Int {
//我们大致可以理解为:某个时间点所在的“小单元”,在“大单元”中的数量
returnNSCalendar.currentCalendar().rangeOfUnit(.Day, inUnit:.Month, forDate:self).length
}
// 获取日期是星期几
func getDateWeekDay() ->Int {
let dateFmt =NSDateFormatter()
dateFmt.dateFormat ="yyyy-MM-dd HH:mm:ss"
let interval =Int(self.timeIntervalSince1970)
let days =Int(interval/86400)
let weekday = ((days +4)%7+7)%7
return weekday
}
/**
* 获取这个月第一天是星期几
*/
func getMontFirstWeekDay() ->Int {
//1.Sun. 2.Mon. 3.Thes. 4.Wed. 5.Thur. 6.Fri. 7.Sat.
let calendar =NSCalendar.currentCalendar()
//这里注意 swift要用[,]这样方式写
let com = calendar.components([.Year,.Month,.Day], fromDate:self)
//设置成第一天
com.day =1
let date = calendar.dateFromComponents(com)
//我们大致可以理解为:某个时间点所在的“小单元”,在“大单元”中的位置 ordinalityOfUnit
let firstWeekDay = calendar.ordinalityOfUnit(.Weekday, inUnit: .WeekOfMonth, forDate: date!)