date-utils
JavaScript、typescript、nodejs日期操作-筆記
可使用 date-utils
https://github.com/JerrySievert/date-utils
JavaScript、typescript、nodejs日期操作:
1、獲取當前日期。
2、格式化日期。
3、獲取當前時間-分鐘。
4、獲取當日期格式化至分鐘。
5、傳入日期增加小時,並格式化爲2017092215。
6、傳入日期增加小時,並獲取當前小時。
7、傳入日期增加天數,並格式化爲20170922。
8、格式化到天。
9、格式化到小時。
10、獲取當前小時。
11、添加日。
12、日期比較。
注意:getMonth()獲取到的日期差一個月,最好+1
typescript BaseDate類不斷完善中,最後更新日期2017-09-22
/**
* 日期處理公共類
*
* @export
* @class BaseDate
*/
export
class BaseDate {
/**
* 獲取當前日期:20170718
*
* @returns{string}
* @memberofBaseDate
*/
publicstaticgetDateNow():string
{
letdateNow=
newDate();
letyear:number=
dateNow.getFullYear();
letmonth:string|
number=dateNow.getMonth()+1;
letday:string|
number=dateNow.getDate();
//return new Date(year, month, day);
if (month<10)
{
month="0"+month;
}
if (day<10)
{
day="0"+day;
}
returnyear+
""+month+""+day;
}
/**
* 格式化日期 格式化後:20170718
*
* @param{Date}date
* @returns{string}
* @memberofBaseDate
*/
publicstaticformatDate(date:Date):string
{
vardateNow=
date;
varyear:number=
dateNow.getFullYear();
varmonth:string|
number=dateNow.getMonth()+1;
varday:string|
number=dateNow.getDate();
//return new Date(year, month, day);
if (month<10)
{
month="0"+month;
}
if (day<10)
{
day="0"+day;
}
returnyear+
""+month+""+day;
//return new Date("yyyy-MM-dd");
}
/**
* 獲取當前時間-分鐘
*
* @static
* @returns{string}
* @memberofBaseDate
*/
publicstaticgetCurrentMinutesTostring():string
{
letdate=
newDate();
letminute:string=
date.getMinutes()<10?"0"+date.getMinutes():date.getMinutes().toString();
returnminute;
}
/**
* 獲取當日期格式化至小時
*
* @static
* @returns{string}
* @memberofBaseDate
*/
publicstaticgetCurrentDateToString_ss():string
{
letdate=
newDate();
letyear:number=
date.getFullYear();
letmonth:string|
number=date.getMonth()+1;
letday:string|
number=date.getDate();
lethour:string|
number=date.getHours()<10?"0"+date.getHours():date.getHours();
letminute:string|
number=date.getMinutes()<10?"0"+date.getMinutes():date.getMinutes();
//return new Date(year, month, day);
if (month<10)
{
month="0"+month;
}
if (day<10)
{
day="0"+day;
}
returnyear+
""+month+""+day+":"+hour;//
+ "" + minute;
}
/**
* 獲取當前時間的前一個小時
*
* @static
* @param{number}addHours
* @returns{string}
* @memberofBaseDate
*/
publicstaticgetAddHour(date:Date,hour:number):string
{
letdate_hour=
newDate(date.setHours(date.getHours()+hour));
returnthis.FormatTohh(date_hour);
//return new Date(date.setDate(date.getDate() + days));
}
/**
* 獲取當前時間的前一個小時
*
* @static
* @param{number}addHours
* @returns{string}
* @memberofBaseDate
*/
public staticgetAddHours(date:Date,hour:number)
{
letdate_hour=
newDate(date.setHours(date.getHours()+hour));
returndate.getHours();
//return new Date(date.setDate(date.getDate() + days));
}
/**
* 獲取當前時間的前一天
*
* @static
* @param{number}addHours
* @returns{string}
* @memberofBaseDate
*/
publicstaticgetAddDay(date:Date,day:number)
{
letdate_day=
newDate(date.setDate(date.getDate()+day));
returnthis.FormatToDay(date_day);
//return new Date(date.setDate(date.getDate() + days));
}
/**
* 格式化到小時
*
* @static
* @param{Date}date
* @returns
* @memberofBaseDate
*/
publicstaticFormatToDay(date:Date)
{
letyear=
date.getFullYear();
letmonth:string|
number=date.getMonth()+1;
letday:string|
number=date.getDate();
// let hour = date.getHours() < 10 ? "0" + date.getHours() : date.getHours();
//let minute = date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes();
//return new Date(year, month, day);
if (month<10)
{
month="0"+month;
}
if (day<10)
{
day="0"+day;
}
returnyear+
""+month+""+day;//
+ ":" + hour; // + "" + minute;
}
/**
* 格式化到小時
*
* @static
* @param{Date}date
* @returns
* @memberofBaseDate
*/
publicstaticFormatTohh(date:Date)
{
letyear:number=
date.getFullYear();
letmonth:string|
number=date.getMonth()+1;
letday:string|
number=date.getDate();
lethour:string|
number=date.getHours()<10?"0"+date.getHours():date.getHours();
letminute:string|
number=date.getMinutes()<10?"0"+date.getMinutes():date.getMinutes();
//return new Date(year, month, day);
if (month<10)
{
month="0"+month;
}
if (day<10)
{
day="0"+day;
}
returnyear+
""+month+""+day+":"+hour;//
+ "" + minute;
}
/**
* 獲取當前小時
*
* @static
* @returns{string}
* @memberofBaseDate
*/
publicstaticgetCurrentHour():string
{
letdate=
newDate();
returndate.getHours()<10?"0"+date.getHours():date.getHours()+"";
}
/**
* /**
* 添加日
*
* @param{Date}date
日期
* @param{number}days
添加的天數
* @returns{Date}
* @memberofBaseDate
*/
publicstaticaddDays(date:Date,days:number):Date
{
returnnewDate(date.setDate(date.getDate()+days));
}
}
//字符串格式化爲日期2016/09/08
function formatStringToDate(valueDate) {
//console.log("formatStringToDate:" + valueDate.replace(/-/g, "/"));
return new Date(Date.parse(valueDate.replace(/-/g, "/")));
}
//獲取當前日期
function getDateNow() {
var dateNow = new Date();
var year = dateNow.getFullYear();
var month = dateNow.getMonth();
var day = dateNow.getDate();
return new Date(year, month, day);
//return year + "-" + month + "-" + day;
//return new Date("yyyy-MM-dd");
}
//爲當前日期添加月份
function addMonths(date, month) {
var dateNow = date;
var year = dateNow.getFullYear();
var month = dateNow.getMonth() + month;
var day = dateNow.getDate();
if (parseInt(month / 12) > 0) {
year += parseInt(month / 12)
}
//console.log("year:" + year + " month:" + month + " day:" + day);
return new Date(year, month, day);
}
//添加日
function addDays(date, days) {
return new Date(date.setDate(date.getDate() + days));
}
//是否超過時限,超過返回true,沒有是false
function isDateLimit(indexDate, limitDate) {
//console.log("【indexDate:】" + indexDate + " 【limitDate:】" + limitDate);
//console.log(indexDate <= limitDate ? true : false);
return indexDate <= limitDate ? true : false;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.