JS日期求前三个月的月份

JS日期 比如2017年一月一号 前三个月 我只要月份,但是年份不能变年份还得是2016的
哪位大神能给出代码!急急急!!!!!!!!!!!

  function getPreMonth(date) {
            var arr = date.split('-');
            var year = arr[0]; //获取当前日期的年份
            var month = arr[1]; //获取当前日期的月份
            var day = arr[2]; //获取当前日期的日
            var days = new Date(year, month, 0);
            days = days.getDate(); //获取当前日期中月的天数
            var year2 = year;
            var month2 = parseInt(month) - 1;
            if (month2 == 0) {//如果是1月份,则取上一年的12月份
                year2 = parseInt(year2) - 1;
                month2 = 12;

            }
            var month3 = month2-1;
            var month4 = month2-2
            }
           }
            var result = year2+','+month2 + ',' + month3 + ',' +month4 ;
            return result;
        }
        alert(getPreMonth("2017-01-01"));
getPrevMonth("2017-01-01");

function getPrevMonth(data)
{
    var initDate = new Date(data);
    var result = "";

    result += addDate(initDate, -1) + ",";
    result += addDate(initDate, -2) + ",";
    result += addDate(initDate, -3) + ",";
    alert(result);
    return result;

}

function addDate(date, days) {
    var d = new Date(date);
    d.setMonth(d.getMonth() + days);
    var month = d.getMonth() + 1;
    var day = d.getDate();
    if (month < 10) {
        month = "0" + month;
    }
    if (day < 10) {
        day = "0" + day;
    }
    var val = d.getFullYear() + "年" + month+"月" ;
    return val;
}


    这个年份如果传的是2017年2月的话,会出现年份2017和2016
alert(getPrevMonth("2017-01-01"));

function getPrevMonth(data)
{
    var initDate = new Date(data);
    var result = "";
    result += addMonth(initDate, -1) + ",";
    result += addMonth(initDate, -2) + ",";
    result += addMonth(initDate, -3);
    return result;

}

function addMonth(date, months) {
    var d = new Date(date);
    d.setMonth(d.getMonth() + months);
    var month = d.getMonth() + 1;// getMonth 返回的月份要比实际月份少一个月 ,从0开始的,所以要加一
    var day = d.getDate();
    if (month < 10) {
        month = "0" + month;
    }
    if (day < 10) {
        day = "0" + day;
    }
    var val = d.getFullYear() + "年" + month+"月" ;
    return val;
}

//做了下补充,方便楼主学习

function getDate(date) {
var currentDate = new Date(date);//date传日期值格式要正确
var newDate: string="";
var month = currentDate.getMonth+1;
if(month<3){
month=month+12-3;
}else{
month = month-3;
}
newDate = new Date(currentDate.getFullYear(),month,currentDate.getDay());
return newDate;//返回的是UTC时间格式
}