猿问

假设我有一组日期数据,怎么把年月相同的 放到一个数组里?

比如我有这样一组 日期数据 :

var initDate = ['2017-7-7', '2017-7-6', '2017-5-1', '2016-12-12', '2016-8-15', '2017-5-1','2015-6-2','2015-6-3'];

实现的结果为:


['2015-6-2','2015-6-3']

['2016-8-15']

['2016-12-12']

['2017-5-1','2017-5-1']

['2017-7-7', '2017-7-6']

看着简单,但着实想了很久。。。也没有很好的解决方案...

长风秋雁
浏览 494回答 1
1回答

皈依舞

var initDate = ['2017-7-7', '2017-7-6', '2017-5-1', '2016-12-12', '2016-8-15', '2017-5-1','2015-6-2','2015-6-3'];var hist = initDate.reduce(function (prev, item) {    var d = item.split("-");    var date = d[0] + d[1];    if (date in prev)        prev[date].push(item);    else        prev[date] = [item];    return prev;}, {} );for(var k in hist)    console.log(k, hist[k]);
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答