js 日期(yyyy-mm-dd)相减得出年数 ,年份截取再相减的不要,要计算完后截取

一个是A(格式:YYYY-MM-DD)日期,一个B日期(格式:YYYY-MM-DD)其实A日期一定大于B日期,其中有这样一个规则,A日期大于B日期两年走一个规则,五年走一个规则,不满两年走一个规则,求一个简单能看懂的写法

走一个规则是鸡个意思?而且2个日期相减得到天数,年数你怎么算,按365天1年还是366,不整除的话你+1年还是什么东东


    function getDay(a, b) {
        a = new Date(a.replace(/-/g, '/'));
        b = new Date(b.replace(/-/g, '/'));
        var d = Math.abs(a.getTime() - b.getTime()) / 1000 / 24 / 60 / 60;
        var year = Math.floor(d / 365);//不整除取最小的年数或者直接进位(Math.ceil),或者四舍五入Math.round,自己改这个罗
        alert(year)
        if (year >= 5) {
            //5年
        }
        else if (year >= 2) {
            //2年
        }
        else {
            //小于2年
        }
    }

    getDay('2012-2-3','2015-5-3')

上面错了多计算了一年....

    a="2017-01-03";
    b="2014-01-04";
    var arrA=a.toString().split("-");
    var arrB=b.toString().split("-");
    if(arrA[1]<arrB[1]||arrA[2]<arrB[2]){
        year = arrA[0] - arrB[0]-1;
    }else{
        year = arrA[0] - arrB[0];
    }
    console.log(year);

闰年怎么算 ,比如 去年 2016 有 29 ,今年到了2月28 ,算过了一年还是没过一年呢?
var arrA=a.toString().split("-");
var arrB=b.toString().split("-");
if(arrA[1]<arrB[1]||arrA[2]<arrB[2]){
year = arrA[0] -arrB[0] ;
}else{
year = arrA[0] -arrB[0]+1;
}

A.substr(0, 4) - B.substr(0, 4) -0 = 你要的年分差

推荐moment.js http://momentjs.cn/docs/#/query/
var a = moment("2017-01-02");
var b = moment("2016-05-03");
a.diff(b, 'days'); // 244

var a = moment("2017-01-02");
var b = moment("2016-05-03");
a.diff(b, 'years'); // 1

var yearA=日期A.getFullYear();
var yearB=日期B.getFullYear();
var result=yearA-yearB;
switch(result)
{
case....
}
后面自己来吧