您的位置:首页 > Web前端 > Node.js

JavaScript、typescript、nodejs日期操作-笔记

2017-03-30 17:34 441 查看
可使用 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

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(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;

            }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: