UNPKG

1.08 kBJavaScriptView Raw
1var staticWeekTime = require('./staticWeekTime')
2var staticStrFirst = require('./staticStrFirst')
3
4var helperGetYMDTime = require('./helperGetYMDTime')
5
6var getWhatMonth = require('./getWhatMonth')
7var toStringDate = require('./toStringDate')
8var getWhatWeek = require('./getWhatWeek')
9
10var isValidDate = require('./isValidDate')
11
12/**
13 * 返回某个月的第几周
14 *
15 * @param {Date} date 日期或数字
16 * @return {Number}
17 */
18function getMonthWeek (date) {
19 var monthFirst, monthFirstWeek
20 var currentDate = toStringDate(date)
21 if (isValidDate(currentDate)) {
22 monthFirst = getWhatMonth(currentDate, 0, staticStrFirst)
23 monthFirstWeek = getWhatWeek(monthFirst, 0, 1)
24 if (monthFirstWeek < monthFirst) {
25 monthFirstWeek = getWhatWeek(monthFirst, 1, 1)
26 }
27 if (currentDate >= monthFirstWeek) {
28 return Math.floor((helperGetYMDTime(currentDate) - helperGetYMDTime(monthFirstWeek)) / staticWeekTime) + 1
29 }
30 return getMonthWeek(getWhatWeek(currentDate, 0, 1))
31 }
32 return NaN
33}
34
35module.exports = getMonthWeek