JavaScript获取时间工具类

在平时写报表的时候,经常会使用到获取今日、昨日、明日、星期、月、年等信息的函数,使用JS工具类可以很容易的实现上述功能,

下面是我平时使用的getTime.js工具类

获取日期,dates为0代表今日、为-1代表昨日、为1代表明日:

function getDate(dates){
var dd = new Date();
    dd.setDate(dd.getDate()+dates);
    var y = dd.getFullYear();
    var m = dd.getMonth()+1;
    var d = dd.getDate();
    if(d < 10 ){
    	d="0"+d;
    }
    if(m < 10){
    	m = "0" +m;
    }
    
return y+"-"+m+"-"+d;
}
//获取周一:
function getMonday(){
	var d = new Date();
	var year = d.getFullYear();
	var month = d.getMonth()+1;
	var date = d.getDate();
	if(month < 10){
		month = "0"+month;
	}
	if(date < 10){
		date ="0"+date;
	}
	// 周
	var day=d.getDay();
	var monday = day!=0?day-1:6; // 本周一与当前日期相差的天数
	return monday;
}
function getQFMonth(month){
var quarterMonthStart=0; 
var spring=1; // 春
var summer=4; // 夏
var fall=7;   // 秋
var winter=10;// 冬
if(month<3){ return spring; } 
if(month<6){ return summer; } 
if(month<9){ return fall; } 
return winter; 
}; 
function getQF(type,months){
var d = new Date();
var year = d.getFullYear();
    var month = d.getMonth()+1;
    var qfmonth = getQFMonth(month);

    if(months!=0){
    if(qfmonth==10 && months>0){
    year++;qfmonth=1;
    }else if(qfmonth==1 && months<0){
    year--;qfmonth=10;
    }else{
    qfmonth = qfmonth+months;
    }
    }
    
    var fd = year+"-"+qfmonth+"-"+1;
    var ed = "";
    if(qfmonth==1 || qfmonth==10){
ed = year+"-"+(qfmonth+2)+"-"+31;
    }else{
ed = year+"-"+(qfmonth+2)+"-"+30;
    }

    var qf = "";
if(type=="s"){
qf = fd;
}else{
qf = ed;
}
return qf;
}
//获取月份,当type为“s"表示为月初第一天,当type为”e”代表为月末那天,months为0代表本月,months为-1代表上月:

//获取月份
function getMonth(type,months){
	var d = new Date();
	var year = d.getFullYear();
	var month = d.getMonth()+1;

	if(months!=0){
		// 如果本月为12月,年份加1,月份为1,否则月份加1。
		if(month==12 && months>0){
		year++;month=1;
		}else if(month==1 && months<0){
		year--;month=12;
		}else{
		month = month+months;
		}
	}
	
    var date = d.getDate();
    if(month <10){
		month ="0"+month;
	}
    var firstday=year+"-"+month+"-"+"01";
    var lastday="";
    if(month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12){
	lastday = year+"-"+month+"-"+31;
	}
    else if(month==2){
	// 判断是否为闰年(能被4整除且不能被100整除 或 能被100整除且能被400整除)
	if((year%4==0 && year%100!=0)||(year%100==0 && year%400==0)){
	lastday = year+"-"+month+"-"+29;
	}else{
	lastday = year+"-"+month+"-"+28;
	}
	}else{
	lastday = year+"-"+month+"-"+30;
	}
	var day = "";
	if(type=="s"){
	day = firstday;
	}else{
	day = lastday;
	}
	return day;
	}
//getyears()和获取月的参数类似的:

function getYears(type,years){
	var d = new Date();
	var year = d.getFullYear();
	
	    var fd = (year+years)+"-"+"01"+"-"+"01";
	    var ed = (year+years)+"-"+12+"-"+31;
	
	    var yr = "";
	if(type=="s"){
	yr = fd;
	}else{
	yr = ed;
	}
	return yr;
}






  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

互联网极客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值