84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
目前有个这样的需求就是用moment.js 能不能得到 某一天到某一天一共经过了几个月,那几个月?
比如: 2016-01-15 / 2016-07-31 通过计算能得到 这之间经过了 2016-01、2016-02、2016-03、2016-04、2016-05、2016-06、2016-07 这几个月
哪位大神能帮忙看看这个应该怎么写? moment里面貌似没有这样的功能? 没有moment的也没关系, 纯js/PHP/JAVA的都可以,都能看懂,谢谢了,急求!
光阴似箭催人老,日月如移越少年。
这样么?
修正一把:
再来修正一把
var diffMonths = function(date1, date2) { var a = moment(date1); var b = moment(date2); var diff = b.format('YM') - a.format('YM'); diff = b.format('Y') !== a.format('Y') ? diff + 2 : diff; return Array.apply([], new Array(diff + 1)).map(function(item, index) { return a.clone().add(index, 'months').format('YYYY-MM'); }); }; console.log(diffMonths([2016, 0, 15], [2016, 6, 31])); console.log(diffMonths([2016, 6, 31], [2016, 7, 1])); console.log(diffMonths([2016, 6, 1], [2016, 6, 31])); console.log(diffMonths([2016, 6, 31], [2016, 8, 1])); console.log(diffMonths([2016, 6, 31], [2017, 8, 1])); console.log(diffMonths([2016, 6, 31], [2017, 0, 1]));
我看了你最后一次提供的做法,光比较月份的话,最后两个case是跑不通的,所以才想到再改一次。万没想到,这么个小东西也确实写了好久
这样么?
修正一把:
再来修正一把