因为要做一个日历控件,遇到国家法定节假日,怎么实现此功能呢?其实实现代码很简单的。下面我给大家分享js判断节假日实例代码,需要的朋友参考下吧
效果展示:
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <script src="jquery.min.js" type="text/javascript"></script> <script src="date.js" type="text/javascript"></script> </head> <script> /************************************************************* * 判断某天是不是工作日 * * @ date {Date} 要判断的日期(0000-00-00) **************************************************************/ //2017年节假日 var jrdate_2017 = ["2017-01-01","2017-01-02","2017-01-27","2017-01-27","2017-01-27","2017-01-28","2017-01-29","2017-01-30","2017-01-31","2017-02-01","2017-02-02","2017-04-02","2017-04-03","2017-04-04","2017-04-29","2017-04-30","2017-05-01","2017-05-28","2017-05-29","2017-05-30","2017-10-01","2017-10-02","2017-10-03","2017-10-04","2017-10-05","2017-10-06","2017-10-07","2017-10-08"]; //2017年调休日 var txr_2017 = ["2017-01-22","2017-02-04","2017-04-01","2017-05-27","2017-09-30"]; //2018年节假日 var jrdate_2018 = ["2018-01-01","2018-02-15","2018-02-16","2018-02-17","2018-02-18","2018-02-19","2018-02-20","2018-02-21","2018-04-05","2018-04-06","2018-04-07","2018-04-29","2018-04-30","2018-05-01","2018-06-16","2018-06-17","2018-06-18","2018-09-22","2018-09-23","2018-09-24","2018-10-01","2018-10-02","2018-10-03","2018-10-04","2018-10-05","2018-10-06","2018-10-07"]; //2018年调休日 var txr_2018 = ["2018-02-11","2018-02-24","2018-04-08","2018-04-28","2018-09-29","2018-09-30"]; var num = 0; function isWorkday(date_String) { //debugger; var date = !date_String ? new Date() : new Date(date_String); var is_jr_2017 = $.inArray(date_String, jrdate_2017); var is_jr_2018 = $.inArray(date_String, jrdate_2018); var is_tx_2017 = $.inArray(date_String, txr_2017); var is_tx_2018 = $.inArray(date_String, txr_2018); if(is_jr_2017!=-1 || is_jr_2018!=-1){ return; //"节假日"; } var getday = date.getDay(); if (getday == 0 || getday == 6) { if(is_tx_2017!=-1 || is_tx_2018!=-1){ num++; return;// '调休日'; } return;// '休息日'; } else { if(is_tx_2017!=-1 || is_tx_2018!=-1){ num++; return;// '调休日'; } num++; return;// '工作日'; } //num; } //var d_arr = []; //时间段内所有日期 function getDayInfo(startDate,endDate){ var bd = new Date(startDate),be = new Date(endDate); var bd_time = bd.getTime(), be_time = be.getTime(),time_diff = be_time - bd_time; d_arr = []; num = 0; for(var i=0; i<= time_diff; i+=86400000){ var ds = new Date(bd_time+i).Format("yyyy-MM-dd"); isWorkday(ds); //d_arr.push(ds) } console.log(num); console.log(d_arr); $("#show").html("呀!这段时间我们一共上"+num+"天班呢。"); } function getInfo(info){ var startDate = $("#startDate").val(); var endDate = $("#endDate").val(); getDayInfo(startDate,endDate); //console.log(isWorkday(startDate)); } // 调用 //alert(isWorkday('2016-12-10')); </script> <body> <h3>填写时间算算我们能上几天班?!</h3> <p id="p1"> 开始时间:<input id="startDate" type="text" value="2018-02-01"></input> 截止日期:<input id="endDate" type="text" value="2018-02-28"></input> <input type="button" onclick = 'getInfo()' value="点击获取工作日天数"></input> </p> <p> <strong><span id = "show"></span></strong> </p> </body> </html>
ps:下面在给大家分享一段代码基于js判断所有节假日,具体代码如下所示:
// JavaScript Document calendar = new Date(); month = calendar.getMonth(); date = calendar.getDate(); if ((month == 0) && (date == 1)) document.write("元旦"); if ((month == 1) && (date ==13 )) document.write("除夕"); if ((month == 1) && (date ==14 )) document.write("春节/情人节"); if ((month == 2) && (date == 1)) document.write("国际海豹日"); if ((month == 2) && (date == 8)) document.write("国际劳动妇女节/中国保护母亲河日"); if ((month == 2) && (date == 12)) document.write("植树节"); if ((month == 3) && (date == 1)) document.write("愚人节"); if ((month == 3) && (date == 5)) document.write("清明节"); if ((month == 4) && (date == 1)) document.write("国际劳动节"); if ((month == 4) && (date == 9)) document.write("母亲节"); if ((month == 5) && (date == 1)) document.write("国际儿童节"); if ((month == 5) && (date == 26)) document.write("国际禁毒日"); if ((month == 7) && (date == 1)) document.write("建军节"); if ((month == 7) && (date == 15)) document.write("日本无条件投降日/世纪婚纱日"); if ((month == 7) && (date == 16)) document.write("七夕情人节"); if ((month == 9) && (date == 20)) document.write("世界厨师日"); if ((month == 9) && (date == 22)) document.write("世界传统医药日"); if ((month == 9) && (date == 24)) document.write("联合国日/世界发展信息日"); if ((month == 9) && (date == 25)) document.write("世界骨质疏松日/抗美援朝纪念日/环卫工人节"); if ((month == 9) && (date == 31)) document.write("世界勤俭日/中国男性健康日"); if ((month == 11) && (date == 24)) document.write("平安夜"); if ((month == 11) && (date == 25)) document.write("圣诞节");
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
以上是在js中如何判断节假日的详细内容。更多信息请关注PHP中文网其他相关文章!

不同JavaScript引擎在解析和执行JavaScript代码时,效果会有所不同,因为每个引擎的实现原理和优化策略各有差异。1.词法分析:将源码转换为词法单元。2.语法分析:生成抽象语法树。3.优化和编译:通过JIT编译器生成机器码。4.执行:运行机器码。V8引擎通过即时编译和隐藏类优化,SpiderMonkey使用类型推断系统,导致在相同代码上的性能表现不同。

JavaScript在现实世界中的应用包括服务器端编程、移动应用开发和物联网控制:1.通过Node.js实现服务器端编程,适用于高并发请求处理。2.通过ReactNative进行移动应用开发,支持跨平台部署。3.通过Johnny-Five库用于物联网设备控制,适用于硬件交互。

我使用您的日常技术工具构建了功能性的多租户SaaS应用程序(一个Edtech应用程序),您可以做同样的事情。 首先,什么是多租户SaaS应用程序? 多租户SaaS应用程序可让您从唱歌中为多个客户提供服务

本文展示了与许可证确保的后端的前端集成,并使用Next.js构建功能性Edtech SaaS应用程序。 前端获取用户权限以控制UI的可见性并确保API要求遵守角色库

JavaScript是现代Web开发的核心语言,因其多样性和灵活性而广泛应用。1)前端开发:通过DOM操作和现代框架(如React、Vue.js、Angular)构建动态网页和单页面应用。2)服务器端开发:Node.js利用非阻塞I/O模型处理高并发和实时应用。3)移动和桌面应用开发:通过ReactNative和Electron实现跨平台开发,提高开发效率。

JavaScript的最新趋势包括TypeScript的崛起、现代框架和库的流行以及WebAssembly的应用。未来前景涵盖更强大的类型系统、服务器端JavaScript的发展、人工智能和机器学习的扩展以及物联网和边缘计算的潜力。

JavaScript是现代Web开发的基石,它的主要功能包括事件驱动编程、动态内容生成和异步编程。1)事件驱动编程允许网页根据用户操作动态变化。2)动态内容生成使得页面内容可以根据条件调整。3)异步编程确保用户界面不被阻塞。JavaScript广泛应用于网页交互、单页面应用和服务器端开发,极大地提升了用户体验和跨平台开发的灵活性。

Python更适合数据科学和机器学习,JavaScript更适合前端和全栈开发。 1.Python以简洁语法和丰富库生态着称,适用于数据分析和Web开发。 2.JavaScript是前端开发核心,Node.js支持服务器端编程,适用于全栈开发。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Dreamweaver Mac版
视觉化网页开发工具