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>
  <div id="div1">
    开始时间:<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>
  </div>
  <div>
  	<strong><span id = "show"></span></strong>
  </div>
</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判断节假日实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • 万圣节是什么节日 2014万圣节是几月几日

    2014万圣节是几月几日?万圣节是什么时候?万圣节是什么节? 答: 2014万圣夜:10月31日 2014年万圣节:11月1日 我们一般说的过万圣节就是过万圣夜,这一天一些游乐场所都非常热闹.像上海的欢乐谷等... 万圣节(Hallowmas) "杰克灯"(南瓜灯)的样子十分可爱,做法也极为简单.将南瓜掏空,然后在外面刻上笑眯眯的眼睛和大嘴巴,再在瓜中插上一支蜡烛,把它点燃,人们在很远的地方便能看到这张憨态可掬的笑脸.这可是孩子们最喜欢的玩物了. 节日起源 第一种说法 方法法关于万圣节

  • 程序员的新年祝福 Happy New Year

    愿你新年快乐,许下新年的新愿望,努力实现! C:printf("Happy New Year"); C++ : cout<<"Happy New Year"; Objectivec: NSLog(@"Happy New Year!"); QBasic : Print "Happy New Year" Asp : Response.Write "Happy New Year" PHP : echo

  • js实现网页自动刷新可制作节日倒计时效果

    复制代码 代码如下: <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content=""> <meta

  • javascript实现带节日和农历的日历特效

    带节日和农历的脚本: 复制代码 代码如下: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <TITLE>带农历的日历</TITLE>          <SCRIPT language="JavaScript"> <!--  var lunarInfo

  • 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">

  • JS返回顶部实例代码

    本文实例为大家分享了JS返回顶部实例代码,供大家参考,具体内容如下 html/css部分 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script src="返回顶部效果.js"></script> <style&g

  • ASP强制刷新网页和判断文件地址实例代码

    强制刷新网页 <% '强制性刷新随机验证码 '让随机验证码每次按IE的后退按钮时,返回登录页面的随即码都自动刷新, Response.expires=-1 Response.AddHeader"pragma","no-cache" Response.AddHeader"cache-control","no-store" %> 判断文件地址是否有效 <% Response.Write("")

  • 利用switch语句进行多选一判断的实例代码

    实例如下: <!doctype html> <meta http-equiv="content-type" content="text/html" charset="utf-8"/> switch语句,switch语句用于根据多个不同条件执行不同动作.<br/> 如果你希望有选择地执行若干代码块之一,还请使用switch语句. <br/> 语法结构如下: <pre> switch(n)

  • 三种动态加载js的jquery实例代码另附去除js方法

    复制代码 代码如下: !-- 这里为你提供了三种动态加载js的jquery实例代码哦,由于jquery是为用户提供方便的,所以利用jquery动态加载文件只要一句话$.getscript("test.js");就ok了. <!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.

  • 2019手机号码JS正则表达式验证实例代码

    概念 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑. 简介 正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符"))操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个"规则字符串",这个"规则字符串"用来表达对字符串

  • 非Vuex实现的登录状态判断封装实例代码

    目录 前言 登录状态封装 getToken isLogin 使用方法 setToken 最后 前言 在项目中肯定会有用户登录状态的判断,所以我们需要封装判断登录状态,用来满足整个项目的应用,当然刚不使用封装的话,会造成耦合度高,代码冗余等结果,在项目中可能常常用到vuex状态管理来进行登录状态的存,那如果项目用不到状态管理,那就可以使用简单的封装来进行登录状态判断. 登录状态封装 我们如果想要普通封装登录状态的话需要两个函数即获取存储的token的getToken和使用token判断是否登录的i

  • 完美兼容多浏览器的js判断图片路径代码汇总

    第一种方式 //检查图片是否存在 function CheckImgExists(imgurl) { var ImgObj = new Image(); //判断图片是否存在 ImgObj.src = imgurl; //没有图片,则返回-1 if (ImgObj.fileSize > 0 || (ImgObj.width > 0 && ImgObj.height > 0)) { alert(imgurl + '存在'); } else { alert(imgurl +

  • Node.js连接mongodb实例代码

    前面介绍了node.js操作mysql以及redis的内容,这里继续学习操作mongodb的内容. 安装驱动 安装命令 cnpm install mongodb 安装成功 数据库操作 因为mongodb是文档类型的数据库,与mysql有很大不同,mongodb会自动创建数据库和集合,并不需要提前进行手动创建. Insert var MongoClient = require("mongodb").MongoClient; var DB_CONN_STR = "mongodb:

  • html5 canvas js(数字时钟)实例代码

    复制代码 代码如下: <!doctype html><html>    <head>        <title>canvas dClock</title>    </head>    <body>        <canvas id = "clock" width = "500px" height = "200px">            您的浏览

随机推荐