JavaScript、typescript、nodejs日期操作-筆記

JavaScript、typescript、nodejs日期操作:
1、獲取當前日期。
2、格式化日期。
3、獲取當前時間-分鐘。
4、獲取當日期格式化至分鐘。
5、傳入日期增加小時,並格式化爲2017092215。
6、傳入日期增加小時,並獲取當前小時。
7、傳入日期增加天數,並格式化爲20170922。
8、格式化到天。
9、格式化到小時。
10、獲取當前小時。
11、添加日。
12、日期比較。
注意:getMonth()獲取到的日期差一個月,最好+1
date-utils
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(yearmonthday);
                //return year + "-" + month + "-" + day;
                //return new Date("yyyy-MM-dd");
            }

            //爲當前日期添加月份
            function addMonths(datemonth) {
                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(yearmonthday);

            }

            //添加日
            function addDays(datedays) {
                return new Date(date.setDate(date.getDate() + days));
            }

            //是否超過時限,超過返回true,沒有是false
            function isDateLimit(indexDatelimitDate) {
                //console.log("【indexDate:】" + indexDate + " 【limitDate:】" + limitDate);
                //console.log(indexDate <= limitDate ? true : false);
                return indexDate <= limitDate ? true : false;
            }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章