• 请不要在回答技术问题时复制粘贴 AI 生成的内容
CookCoder
V2EX  ›  程序员

自己用来判断国内法定节假日的 js 库,分享给各位

  •  1
     
  •   CookCoder · Apr 21, 2022 · 3187 views
    This topic created in 1500 days ago, the information mentioned may be changed or developed.

    https://www.npmjs.com/package/festival_chn

    https://github.com/vueadmin/festival_chn

    最新更新记录

    目前仅支持 2022 年的日期判断

    2.2.1

    • 新增法定节假日判断,调休日判断
    • 法定节假日新增 isSwap 字段,用于判断该假期是否有调休日
    • 法定节假日新增 swapDate 字段,如果 isSwaptrue,则该字段展示本法定节假日的调休日数组
    • 新增 type 字段 1/正常日,2/法定节假日,3/调休日

    NPM

    npm i festival_chn
    

    USE

    import festival from "festival_chn";
    

    PARMAES

    date 需要符合 "yyyy-mm-dd" 格式
    const date = "2022-01-01"
    const res = festival(date);
    

    RETURN

    字段名称 字段类型 返回状态 说明
    name String 必返 节假日名称 /调休 /正常
    type Number 必返 1/正常 2/节假日 3/调休日
    isSwap Boolean 法定节假日必返 true/有调休 false/无调休
    swapDate Array 法定节假日有调休日必返 调休日组成的数组
    {
        name: '春节',
        type: 2,
        isSwap: true,
        swapDate: [
            "2022-01-29"
            "2022-01-30"
        ]
    }
    
    18 replies    2022-04-22 14:20:22 +08:00
    CookCoder
        1
    CookCoder  
    OP
       Apr 21, 2022
    草率的写了一下,有问题和建议请尽情的提出来吧

    也欢迎 PR 和 START
    villivateur
        2
    villivateur  
       Apr 21, 2022 via Android
    这……是不是只要一个字典就好了?
    CookCoder
        3
    CookCoder  
    OP
       Apr 21, 2022
    我是根据自己项目的需求,进行封装的,很简单,也没有什么黑科技优化,朴实的很

    目前只支持 2022 年的判断

    其实准备支持任意年份的,这几天尽力想办法优化一下
    faceair
        4
    faceair  
       Apr 21, 2022
    任意年份支持不了吧,都是国务院每年定的调休方案...
    FlintyLemming
        5
    FlintyLemming  
       Apr 21, 2022
    我之前也糊过一个,但是一想这玩意每年还得等国务院更新然后自己再手动更新,后来就不了了之了
    https://github.com/FlintyLemming/isWeekendHolidayAPI
    CookCoder
        6
    CookCoder  
    OP
       Apr 21, 2022
    @villivateur 一点没毛病,主要是想简单的省心一下

    下一步打算输入开始和结束日期,然后返回全部的节假日信息列表
    koolob
        7
    koolob  
       Apr 21, 2022
    每年根据假日办公告手动更新么?
    CookCoder
        8
    CookCoder  
    OP
       Apr 21, 2022
    @faceair 是的,所有每年都要更新一次,但其实还好,打算弄一个自动化引入的,然后每年 PR 进去一个 20XX.js 的文件就好了。


    @FlintyLemming 我不打算搞接口版本的,因为这个库我自己和团队肯定会经常使用,即便是内部,每年也要更新一次假期信息,主要是这个调休日比较烦,计算请假时间什么的,需要过滤掉。
    CookCoder
        9
    CookCoder  
    OP
       Apr 21, 2022
    @koolob 是的,下一年就是 2.3.X 版本了,手动更新,之前内部使用的时候也是我自己手动更新,这个其实不复杂,但是不弄一个吧,搞一些需求的时候很烦。
    liuidetmks
        10
    liuidetmks  
       Apr 21, 2022 via iPhone
    这都要弄一个库吗?
    linglin0924
        11
    linglin0924  
       Apr 21, 2022
    不错,有用
    yukinotech
        12
    yukinotech  
       Apr 21, 2022
    @CookCoder 挺好的,每年更新一次,明年的留个 pr 机会给我(手动滑稽)
    ColinZeb
        13
    ColinZeb  
       Apr 21, 2022
    每年的调休规则不是都一样吗,可以预测一下 89 不离 10
    CookCoder
        14
    CookCoder  
    OP
       Apr 22, 2022
    @liuidetmks 因为这样比较统一,主要我们公司内部也使用,起码先方便自己和同事
    CookCoder
        15
    CookCoder  
    OP
       Apr 22, 2022
    @yukinotech 没问题,不介意可以把以前的时间也 pr 一下
    CookCoder
        16
    CookCoder  
    OP
       Apr 22, 2022
    @ColinZeb 每年的调休规则和具体放假日期是不一样的,可以参考一下最近几年的
    vevlins
        17
    vevlins  
       Apr 22, 2022
    有需求就有价值,点赞
    CokeMine
        18
    CokeMine  
       Apr 22, 2022 via Android
    法定节假日好像不会返回 type 2
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2601 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 64ms · UTC 10:37 · PVG 18:37 · LAX 03:37 · JFK 06:37
    ♥ Do have faith in what you're doing.