"YYYY-MM-DD"형식의 문자열을 가져 와서 해당 주와 관련하여 날짜 위치를 나타내는 int를 뱉어내는 메서드를 만들었습니다 (월간 겹침 여부에 관계없이). 예를 들어 sunday = 1 monday = 2 등등.
내 코드는 다음과 같습니다.
func getDayOfWeek(today:String)->Int{
var formatter:NSDateFormatter = NSDateFormatter()
formatter.dateFormat = "YYYY-MM-DD"
var todayDate:NSDate = formatter.dateFromString(today)!
var myCalendar:NSCalendar = NSCalendar(calendarIdentifier: NSGregorianCalendar)
var myComponents = myCalendar.components(NSCalendarUnit.WeekdayOrdinalCalendarUnit, fromDate: todayDate)
var weekDay = myComponents.weekdayOrdinal
return weekDay
}
나는 그것이 NSCalendarUnit.WeekdayOrdinalCalendar
틀렸다는 것을 알고 있지만 대부분의 논리적 조합을 시도했습니다. 그리고 myComponents.weekdayOrdinal
예 를 들어 used mycomponents.day
또는 .weekday
.
사용할 항목에 대한 옵션은 다음과 같습니다.
static var EraCalendarUnit: NSCalendarUnit { get }
static var YearCalendarUnit: NSCalendarUnit { get }
static var MonthCalendarUnit: NSCalendarUnit { get }
static var DayCalendarUnit: NSCalendarUnit { get }
static var HourCalendarUnit: NSCalendarUnit { get }
static var MinuteCalendarUnit: NSCalendarUnit { get }
static var SecondCalendarUnit: NSCalendarUnit { get }
static var WeekCalendarUnit: NSCalendarUnit { get }
static var WeekdayCalendarUnit: NSCalendarUnit { get }
static var WeekdayOrdinalCalendarUnit: NSCalendarUnit { get }
static var QuarterCalendarUnit: NSCalendarUnit { get }
static var WeekOfMonthCalendarUnit: NSCalendarUnit { get }
static var WeekOfYearCalendarUnit: NSCalendarUnit { get }
static var YearForWeekOfYearCalendarUnit: NSCalendarUnit { get }
static var CalendarCalendarUnit: NSCalendarUnit { get }
static var TimeZoneCalendarUnit: NSCalendarUnit { get }
DayOfWeekUnit 옵션 (또는 비슷한 것)이 없기 때문에 명확하지 않습니다.