@cloudcome/utils-core
Version:
cloudcome core utils
73 lines (72 loc) • 2.3 kB
TypeScript
import { DateValue } from './core';
export declare enum EWeekStart {
/**
* 周日作为一周的起始日
*/
sunday = 0,
/**
* 周一作为一周的起始日
*/
monday = 1,
/**
* 周二作为一周的起始日
*/
tuesday = 2,
/**
* 周三作为一周的起始日
*/
wednesday = 3,
/**
* 周四作为一周的起始日
*/
thursday = 4,
/**
* 周五作为一周的起始日
*/
friday = 5,
/**
* 周六作为一周的起始日
*/
saturday = 6
}
/**
* 计算指定日期所在年份或月份的周数
* @param dateValue - 可以是数值、字符串或 Date 对象
* @param type - 计算范围,'Y' 表示年份,'M' 表示月份
* @param weekStart - 一周的起始日,默认为 0(周日)
* @returns 返回指定日期所在年份或月份的周数
* @example
* ```typescript
* const date = new Date(2023, 0, 1); // 2023-01-01
* _dateWeeks(date, 'Y'); // 1 (计算年份的周数)
* _dateWeeks(date, 'M'); // 1 (计算月份的周数)
* _dateWeeks(date, 'Y', 1); // 1 (周一作为一周的起始日,计算年份的周数)
* ```
*/
export declare function _dateWeeks(dateValue: DateValue, type: 'Y' | 'M', weekStart?: EWeekStart): number;
/**
* 计算指定日期所在年份的周数
* @param dateValue - 可以是数值、字符串或 Date 对象
* @param weekStart - 一周的起始日,默认为 0(周日)
* @returns 返回指定日期所在年份的周数
* @example
* ```typescript
* const date = new Date(2023, 0, 1); // 2023-01-01
* weeksOfYear(date); // 1
* weeksOfYear(date, 1); // 1 (周一作为一周的起始日)
* ```
*/
export declare function weeksOfYear(dateValue: DateValue, weekStart?: EWeekStart): number;
/**
* 计算指定日期所在月份的周数
* @param dateValue - 可以是数值、字符串或 Date 对象
* @param weekStart - 一周的起始日,默认为 0(周日)
* @returns 返回指定日期所在月份的周数
* @example
* ```typescript
* const date = new Date(2023, 0, 1); // 2023-01-01
* weeksOfMonth(date); // 1
* weeksOfMonth(date, 1); // 1 (周一作为一周的起始日)
* ```
*/
export declare function weeksOfMonth(dateValue: DateValue, weekStart?: EWeekStart): number;