0.0.2 • Published 7 months ago

@swjs/chinese-holidays v0.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
7 months ago

chinese-holidays

中国法定节假日查询,判断当前日期是否是节假日

数据源来自 holiday-cn(自动每日抓取国务院公告

npm (scoped) npm TESTS CI codecov License: MIT

安装

$ npm i @swjs/chinese-holidays

基本用法

import { isWorkingDay, isHoliday, isWeekEnd, getDateInfo } from '@swjs/chinese-holidays';

async function main() {
  const date = '2022-02-01';
  //  判断 2022-02-01  是不是节假日
  await isHoliday(date); // true
  //  判断 2022-01-29  是不是节假日
  await isHoliday('2022-01-29'); // false
  //  判断 2022-01-31  是不是节假日
  await isHoliday('2022-01-31'); // true

  // 判断 2022-02-01 是不是工作日
  await isWorkingDay(date); // false
  //  判断 2022-01-29  是不是工作日 (含法定调休上班
  await isWorkingDay('2022-01-29'); // true

  //  判断 2022-01-29  是不是正常休息的周末 (不含法定调休上班
  await isWeekEnd('2022-01-29'); // false
  //  判断 2022-04-09  是不是正常休息的周末
  await isWeekEnd('2022-04-09'); // true

  // 获取日期信息
  await getDateInfo('2022-02-01');
  // 返回如下数据
  //   {
  //   "name": "春节",
  //   "date": "2022-02-01",
  //   "day": "星期二",
  //   "type": 3
  // }
}

参数

isWorkingDay, isHoliday, isWeekEnd, getDateInfo 所需要的参数如下:

参数说明类型默认值
date日期string \| Date \| number-

isWorkingDay

判断当前日期是否是工作日(含节假日的调休)

返回值为 boolean 类型

isHoliday

判断当前日期是否是法定节假日

返回值为 boolean 类型

isWeekEnd

判断当前日期是否是周末(不包含节假日调休上班)(如果周六为调休上班,则为 FALSE,不算做周末

返回值为 boolean 类型

getDateInfo

返回值为:

/**
 * @typedef dateInfo
 * @property {string} name 工作日,周末,春节,元旦,,,
 * @property {string} date 日期
 * @property {string} day 星期几
 * @property {number} type 1-工作日 2-周末 3-法定节假日 4-节假日调班
 */
const dateInfo = {
  name: '春节',
  date: '2022-02-01',
  day: '星期二',
  type: 3,
};

CHANGELOG

CHANGELOG.md

TODOLIST

  • 增加手动更新缓存的功能
  • 提供离线模式

Contributing

如何贡献代码查看 CONTRIBUTING