js有没有什么可以判断工作日/节假日的方法?

请教一下,前端有没有什么可以判断工作日/节假日API或者方法

阅读 5.9k
3 个回答

第三方Nager.Date

fetch('https://date.nager.at/Api/v2/NextPublicHolidaysWorldwide')
  .then(response => response.json())
  .then(data => {
    // 处理数据
  });

用日期库moment-holiday

const moment = require('moment-holiday');
const isHoliday = moment().isHoliday();

手动:

const holidays = ['2023-01-01', '2023-12-25']; 

function isHoliday(date) {
  const formattedDate = date.toISOString().split('T')[0];
  return holidays.includes(formattedDate);
}

const date = new Date();
console.log(isHoliday(date));

这东西是需要人工维护的,无论是你前端写死、还是有后端给接口(调第三方 API 那也是接口),都需要后期人工介入去编辑假期数据。

因为我国每年的法定节假日有一个很重要的特点,叫调休,是头一年由国务院公布的……

所以你此时是压根不知道 2025 年到底怎么放假的。你只能知道 5 月 1 号、10 月 1 号这些日子当天一定放假,但前后的哪些天怎么调休,你不知道。你只能根据以往的一些统计规律预测一下怎么放假。

你没发现你手机自带的日历里后面的年份怎么休假压根就没显示吗?是手机厂商不想加吗?是它根本就加不了。

P.S. “都是按最近的周末去凑”这种所谓统计学结论非常不靠谱,有太多反例了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏