lunar-month-calendar

0.2.9 • Public • Published

Introduction

生成某个月详细信息的日期库。

Usage

主要暴露两个方法 generategetLunarDate

/*
 * generate 方法提供多种入参方式,具体格式如下。
 * 返回值为一个包含日期详细信息的数组(DateBlock[]),星期日为每周第一天。
 */
Calendar#generate(): DateBlock[]
Calendar#generate(date: Date): DateBlock[]
Calendar#generate(year: number): DateBlock[]
Calendar#generate(year: number, month: number): DateBlock[]
Calendar#generate(year: number, month: number, day: number): DateBlock[]

/*
 * getLunarDate 方法参数为一个日期对象。
 * 返回值为一个包含农历年月日的数组,形式为:['农历年', '农历月', '农历日']
 */
Calendar#getLunarDate(date: Date): string[]

DateBlock interface 定义

interface DateBlock {
    /*
     * 枚举值。
     * 'PRE_MONTH', 该日期为前一个月的日期
     * 'MONTH', 该日期为当月的日期
     * 'NEXT_MONTH', 该日期为后一个月的日期
     */
    type: string;
    isToday: boolean; // 该日期是否是今天
    day: number; // 日,1 - 31
    month: number; // 月,0 - 11
    year: number; // 年,格式为 YYYY
    date: Date; // 该日期
    lunar: string[]; // 该日期对应的农历日期,[农历年, 农历月, 农历日]
    weekday: number; // 该日期为星期几
    week: number; // 该日期所在周是当月的第几周
    weekLength: number; // 该日期所在月总共有多少周,仅对 type 为 'MONTH' 有效
    formatted: string; // 该日期格式格式化为 YYYY-MM-DD 形式的日期
    timestamp: number; // 通过 Date#getTime 获取到的毫秒数
}

Readme

Keywords

Package Sidebar

Install

npm i lunar-month-calendar

Weekly Downloads

3

Version

0.2.9

License

MIT

Unpacked Size

52.6 kB

Total Files

17

Last publish

Collaborators

  • animeboy