最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

前端判斷節(jié)假日的詳細代碼舉例

 更新時間:2024年08月02日 08:26:00   作者:zh?q  
因為要做一個日歷控件,遇到國家法定節(jié)假日,怎么實現(xiàn)此功能呢?這篇文章主要給大家介紹了關于前端判斷節(jié)假日的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下

安裝并引入 

第一種:
npm i chinese-days

import chineseDays from 'chinese-days'

第二種:
直接瀏覽器引入,會跟隨國務院發(fā)布更新
<script src="https://cdn.jsdelivr.net/npm/chinese-days/dist/index.min.js"></script>
<script>
  const { isHoliday } = chineseDays
  console.log(isHoliday('2022-01-01'))
</script>

直接調用

isWorkday 檢查某個日期是否為工作日 console.log(isWorkday('2024-01-01')); // false
isHoliday 檢查某個日期是否為節(jié)假日 console.log(isHoliday('2024-01-01')); // true

isInLieu 檢查某個日期是否為調休日

getDayDetail 檢查指定日期是否是工作日
// 示例用法
如果指定日期是工作日,則返回 true 和工作日名稱,如果是被調休的工作日,
返回 true 和節(jié)假日詳情。如果是節(jié)假日,則返回 false 和節(jié)假日詳情。
// 正常工作日 周五
console.log(getDayDetail('2024-02-02')); // { "date": "2024-02-02", "work":true,"name":"Friday"}
// 節(jié)假日 周末
console.log(getDayDetail('2024-02-03')); // { "date": "2024-02-03", "work":false,"name":"Saturday"}
// 調休需要上班
console.log(getDayDetail('2024-02-04')); // { "date": "2024-02-04", "work":true,"name":"Spring Festival,春節(jié),3"}
// 節(jié)假日 春節(jié)
console.log(getDayDetail('2024-02-17')); // { "date": "2024-02-17", "work":false,"name":"Spring Festival,春節(jié),3"}

獲取指定日期范圍內的所有節(jié)假日

getHolidaysInRange 獲取指定日期范圍內的所有節(jié)假日

接收起始日期和結束日期,并可選地決定是否包括周末。
如果包括周末,則函數(shù)會返回包括周末在內的所有節(jié)假日;否則,只返回工作日的節(jié)假日。
即使不包括周末,周末的節(jié)假日仍然會被返回
// 示例用法
const start = '2024-04-26';
const end = '2024-05-06';

// 獲取從 2024-05-01 到 2024-05-10 的所有節(jié)假日,包括周末
const holidaysIncludingWeekends = getHolidaysInRange(start, end, true);
console.log('Holidays including weekends:', holidaysIncludingWeekends.map(d => getDayDetail(d)));

// 獲取從 2024-05-01 到 2024-05-10 的節(jié)假日,不包括周末
const holidaysExcludingWeekends = getHolidaysInRange(start, end, false);
console.log('Holidays excluding weekends:', holidaysExcludingWeekends.map(d => getDayDetail(d)));

取指定日期范圍內的工作日列表

接收起始日期和結束日期,并可選地決定是否包括周末。如果包括周末,則函數(shù)會返回包括周末在內的所有工作日;否則,只返回周一到周五的工作日。
// 示例用法
const start = '2024-04-26';
const end = '2024-05-06';

// 獲取從 2024-05-01 到 2024-05-10 的所有工作日,包括周末
const workdaysIncludingWeekends = getWorkdaysInRange(start, end, true);
console.log('Workdays including weekends:', workdaysIncludingWeekends);

// 獲取從 2024-05-01 到 2024-05-10 的工作日,不包括周末
const workdaysExcludingWeekends = getWorkdaysInRange(start, end, false);
console.log('Workdays excluding weekends:', workdaysExcludingWeekends);

查找工作日

查找從今天開始 未來的第 {deltaDays} 個工作日。

// 查找從今天開始 未來的第 {deltaDays} 個工作日
// 如果 deltaDays 為 0,首先檢查當前日期是否為工作日。如果是,則直接返回當前日期。
// 如果當前日期不是工作日,會查找下一個工作日。
const currentWorkday = findWorkday(0);
console.log(currentWorkday);

// 查找從今天開始未來的第一個工作日
const nextWorkday = findWorkday(1);
console.log(nextWorkday);

// 查找從今天開始之前的前一個工作日
const previousWorkday = findWorkday(-1);
console.log(previousWorkday);

// 可以傳第二個參數(shù) 查找具體日期的上下工作日
// 查找從 2024-05-18 開始,未來的第二個工作日
const secondNextWorkday = findWorkday(2, '2024-05-18');
console.log(secondNextWorkday);

獲取 24 節(jié)氣的日期

import { getSolarTerms } from "chinese-days";

/** 獲取范圍內 節(jié)氣日期數(shù)組 */
const solarTerms = getSolarTerms("2024-05-01", "2024-05-20");
solarTerms.forEach(({ date, term, name }) => {
  console.log(`${name}: ${date}, ${term}`);
});
// 立夏: 2024-05-05, the_beginning_of_summer
// 小滿: 2024-05-20, lesser_fullness_of_grain

// 沒有節(jié)氣 返回 []
getSolarTerms("2024-05-21", "2024-05-25");
// return []

/* 不傳 end 參數(shù), 獲取某天 節(jié)氣 */
getSolarTerms("2024-05-20");
// return: [{date: '2024-05-20', term: 'lesser_fullness_of_grain', name: '小滿'}]

陽歷轉換農(nóng)歷

// 2097-8-7
console.log(getLunarDate('2097-08-07'))

// 2057-9-28
console.log(getLunarDate('2057-09-28'))
// {
//   date: "2057-09-28",
//   lunarYear: 2057,
//   lunarMon: 8,
//   lunarDay: 30,
//   isLeap: false,
//   lunarDayCN: "三十",
//   lunarMonCN: "八月",
//   lunarYearCN: "二零五七",
//   yearCyl: "丁丑",
//   monCyl: "己酉",
//   dayCyl: "戊子",
//   zodiac: "牛"
// }

// 非閏月 和 閏月例子
console.log(getLunarDate('2001-04-27'))
console.log(getLunarDate('2001-05-27'))

根據(jù)陽歷日期區(qū)間,批量獲取農(nóng)歷日期

console.log(getLunarDatesInRange('2001-05-21', '2001-05-26'))

農(nóng)歷轉換陽歷

當為陰歷閏月的時候,會出現(xiàn)一個農(nóng)歷日期對應兩個陽歷日期的情況,所以返回對象形式。
console.log(getSolarDateFromLunar('2001-03-05'))
// {date: '2001-03-29', leapMonthDate: undefined}

console.log(getSolarDateFromLunar('2001-04-05'))
// {date: '2001-04-27', leapMonthDate: '2001-05-27'}

總結

到此這篇關于前端判斷節(jié)假日的文章就介紹到這了,更多相關前端判斷節(jié)假日內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • js原生方法被覆蓋,從新賦值原生的方法

    js原生方法被覆蓋,從新賦值原生的方法

    下面小編就為大家分享一篇js原生方法被覆蓋,從新賦值原生的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • JavaScript代碼里的判斷小結

    JavaScript代碼里的判斷小結

    在JavaScript代碼中,多多少少會有判斷語句。業(yè)務越復雜,邏輯就越復雜,判斷就越多。今天給大家整理下JavaScript中代碼里常會用到的那些判斷,有需要的可以參考借鑒。
    2016-08-08
  • 一文詳解如何將Javascript打包成exe可執(zhí)行文件

    一文詳解如何將Javascript打包成exe可執(zhí)行文件

    這篇文章主要介紹了將Javascript打包成exe可執(zhí)行文件的相關資料,這種方法適用于需要將JavaScript項目打包成單個獨立運行的可執(zhí)行文件的開發(fā)者,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-04-04
  • arcgis for js 修改infowindow樣式的方法

    arcgis for js 修改infowindow樣式的方法

    下面小編就為大家?guī)硪黄猘rcgis for js 修改infowindow樣式的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • JavaScript算法題之如何將一個數(shù)組旋轉k步

    JavaScript算法題之如何將一個數(shù)組旋轉k步

    這篇文章主要給大家介紹了關于JavaScript算法題之如何將一個數(shù)組旋轉k步的相關資料,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2022-03-03
  • 詳談JavaScript內存泄漏

    詳談JavaScript內存泄漏

    文章從什么是閉包、以及閉包所涉及的作用域鏈說起,講述了JavaScript垃圾回收機制、循環(huán)引用、循環(huán)引用和閉包、IE中的內存泄漏以及解決方法,是篇非常詳盡,非常不錯的文章,這里推薦給大家。
    2014-11-11
  • JavaScript中關于e.keycode的使用

    JavaScript中關于e.keycode的使用

    這篇文章主要介紹了JavaScript中關于e.keycode的使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • JavaScript判斷元素是否在可視區(qū)域的三種方法

    JavaScript判斷元素是否在可視區(qū)域的三種方法

    這這篇文章給大家總結了JavaScript判斷元素是否在可視區(qū)域的三種方法,getBoundingClientRect,IntersectionObserver和offsetTop、scrollTop這三種方法,文中通過代碼示例給大家介紹的非常詳細,需要的朋友可以參考下
    2023-12-12
  • 前端大屏自適應兩種實現(xiàn)方法總結

    前端大屏自適應兩種實現(xiàn)方法總結

    這篇文章主要介紹了前端大屏自適應兩種實現(xiàn)方法,縮放方法會影響地圖等庫的交互效果,而vh、vw、百分比等方法只適用于高度變化,寬度變化時可能需要結合計算屬性來處理,但總體上適配效果較好,需要的朋友可以參考下
    2025-01-01
  • 將URL地址都變成ooooooooo的神奇小工具使用介紹

    將URL地址都變成ooooooooo的神奇小工具使用介紹

    這篇文章主要為大家介紹了將URL地址都變成ooooooooo的神奇小工具使用介紹,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04

最新評論

双城市| 孟津县| 汽车| 太原市| 洛宁县| 桃江县| 洪雅县| 汉沽区| 富裕县| 河津市| 海伦市| 锡林郭勒盟| 曲麻莱县| 兰考县| 忻州市| 双桥区| 惠州市| 手游| 泾阳县| 循化| 紫金县| 抚宁县| 昌黎县| 宣城市| 清新县| 蒙山县| 教育| 庆城县| 霍州市| 邛崃市| 娄底市| 山丹县| 刚察县| 锡林郭勒盟| 铁岭市| 金山区| 清镇市| 涿鹿县| 筠连县| 阳信县| 扬州市|