js-利用Date函数进行日期加运算。

格式 2018-7-25,通过day进行加运算,(昨天检测了几个,发现日期相减,如 getAddDate(2018-1-2,-3)得到的是2018-0-30,所以,这个只适用于加运算);因为我在网上看到,有很多朋友利用时间戳来进行计算,其实,这样不仅有些麻烦,而且比较浪费前端自带的功能,

function getAddDate(date,add,type){

//将所有的变量定义在最顶层

    var splitFlag='',

    temp='',

    reData='';

//因为时间最普遍是以-和/来间隔

    if(date.indexOf('/')>-1){

        splitFlag='/';

    }else if(date.indexOf('-')>-1){

        splitFlag='-';

    }else{

        return;

    }

    temp=date.split(splitFlag);

    if(temp.length==3){//仅仅以年月日

    //默认以day进行加减

    var addY=addM=addD=0;

    switch(type){

        case 1:

            addY=Number(add);

        break;

        case 2:

            addM=Number(add);

        break;

        default:

            addD=Number(add);

        break;

    }

//new Date是浏览器自带的功能函数,它的功能十分强大,我们可以充分利用它,就像下面,只要将年月日按照具体的参数数据,将日期加减,就可以得到加后的日期,

    reData= new Date(Number(temp[0])+addY,Number(temp[1])+addM,Number(temp[2])+addD);

//然后用Date自带的方法获得年月日,然后按照之前得到的符号 splitFlag 进行拼接。

    return reData.getFullYear()+splitFlag+reData.getMonth()+splitFlag+reData.getDate();

 

}

 

}

你可能感兴趣的:(js-利用Date函数进行日期加运算。)