js实现获取两个日期之间所有日期最简单的方法 Date.prototype.format = function() {
var s = '';
var mouth = (this.getMonth() + 1)>=10?(this.getMonth() + 1):('0'+(this.getMonth() + 1));
var day = this.getDate()>=10?this.getDate():('0'+this.getDate());
s += this.getFullYear() + '-'; // 获取年份。
s += mouth + "-"; // 获取月份。
s += day; // 获取日。
return (s); // 返回日期。
};
function getAll(begin, end) {
var ab = begin.split("-");
var ae = end.split("-");
var db = new Date();
db.setUTCFullYear(ab[0], ab[1] - 1, ab[2]);
var de = new Date();
de.setUTCFullYear(ae[0], ae[1] - 1, ae[2]);
var unixDb = db.getTime();
var unixDe = de.getTime();
for (var k = unixDb; k <= unixDe;) {
console.log((new Date(parseInt(k))).format());
k = k + 24 * 60 * 60 * 1000;
}
}
getAll('2017-02-27', '2017-03-02'); //2017-02-27 2017-02-28 2017-03-01 2017-03-02
只需这样就可以取出俩日期点之间的所有的日期,我们就可以轻松绑定echars图表为空的数据了。
Date.prototype.format = function() {
var s = '';
var mouth = (this.getMonth() + 1)>=10?(this.getMonth() + 1):('0'+(this.getMonth() + 1));
var day = this.getDate()>=10?this.getDate():('0'+this.getDate());
s += this.getFullYear() + '-'; // 获取年份。
s += mouth + "-"; // 获取月份。
s += day; // 获取日。
return (s); // 返回日期。
};
function getAll(begin, end) {
var ab = begin.split("-");
var ae = end.split("-");
var db = new Date();
db.setUTCFullYear(ab[0], ab[1] - 1, ab[2]);
var de = new Date();
de.setUTCFullYear(ae[0], ae[1] - 1, ae[2]);
var unixDb = db.getTime();
var unixDe = de.getTime();
for (var k = unixDb; k <= unixDe;) {
console.log((new Date(parseInt(k))).format());
k = k + 24 * 60 * 60 * 1000;
}
}
getAll('2017-02-27', '2017-03-02'); //2017-02-27 2017-02-28 2017-03-01 2017-03-02
本文介绍了一种使用JavaScript获取两个指定日期间所有日期的简便方法。通过扩展Date对象的方法和循环遍历日期戳,可以轻松地输出所需的日期序列,适用于填充Echarts等图表中缺失的日期数据。
769

被折叠的 条评论
为什么被折叠?



