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 arr = [];
    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() - 24 * 60 * 60 * 1000;
    var unixDe = de.getTime() - 24 * 60 * 60 * 1000;
    for (var k = unixDb; k <= unixDe;) {
      //console.log((new Date(parseInt(k))).format());
      k = k + 24 * 60 * 60 * 1000;
      arr.push((new Date(parseInt(k))).format());
    }
    return arr;
}

console.log(getAll('2018-07-05','2018-08-05'));  // 获取两个时间段的每天 字符串 的数组

//今年第一天时间
//new Date(date).getTime() 字符串转时间戳
var yearOneDay = new Date(new Date().getFullYear() + "-" + "01" + "-" + "01").getTime();
//今天
var today = new Date().getTime();
//去年第一天
var quyearOneDay = new Date(new Date().getFullYear() - 1 + '-' + '01' + '-' + '01').getTime();
//得到格式化 今年第一天
var yearOneDaygs = new Date(yearOneDay);
//去年最后一天
var quyearLastDaygs = yearOneDaygs.setDate(yearOneDaygs.getDate() - 1);
var quyearLastDay = new Date(quyearLastDaygs).getTime(); 时间格式化
function parseDateStr(v) {
var time = "";
if (v != null && v != "") {
var date = new Date(v);
Y = date.getFullYear() + '-';
M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-';
D = (date.getDate() + 1 < 10 ? '0' + (date.getDate()) : date.getDate());
h = date.getHours() + ':';
m = date.getMinutes() + ':';
s = date.getSeconds();
time = Y + M + D;
}
return time;
}
//去重复
function qctimes(a, arr) {
arr.forEach(function (item) {
return a.includes(item) ? '' : a.push(item);
});
return a;
}

js 一年中多个时间段 天数去重的更多相关文章

  1. js如何获取一个月的天数 data javascript

    js如何获取一个月的天数 function days(year,month){ var dayCount; now = new Date(year,month, 0); dayCount = now. ...

  2. 前端总结·基础篇·JS(二)数组深拷贝、去重以及字符串反序和数组(Array)

    目录 这是<前端总结·基础篇·JS>系列的第二篇,主要总结一下JS数组的使用.技巧以及常用方法. 一.数组使用 1.1 定义数组 1.2 使用数组 1.3 类型检测 二.常用技巧 2.1 ...

  3. JS 两个对象数组合并并去重

    JS两个对象数组合并并去重 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...

  4. js计算两个日期的天数差值

    js计算两个日期的天数差值 通过两个日期计算这两个日期之间的天数差值 /** * 计算天数差的函数,通用 * @param sDate1 * @param sDate2 * @returns {Num ...

  5. C#一年中有多少周方法和js一年中第几周

    最近在做一个时间插件,用的是jquery-daterangepicker ,现在分享一下查询时间是一年中的第几周的js方法  和 一年中有多少周的C#后台方法,默认是按照周一为一周的开始,如果一年的第 ...

  6. 通过日期在js中求出判断间隔天数,周期等实现分享

    在我们在项目的时候,可能出现这样的一种情况,有一个开始时间和一个结束时间,而这两个时间用$('#StartTime').val(); 取出来的时候又是datetime 类型,我们需要求这个时间中的间隔 ...

  7. Js中处理日期加减天数

    Js的处理日期还是很方便的. 一. 格式化日期为2017-07-04的格式 function formatTime(date) { var year = date.getFullYear(); var ...

  8. 【JS】JavaScript 指定日期增加天数

    指定某个日期(字符串),增加n天后,输出日期字符串,格式:年-月-日: /** * [dateAddDays 从某个日期增加n天后的日期] * @param {[string]} dateStr [日 ...

  9. js计算两个日期相差天数

    //两个时间相差天数 兼容firefox chrome var days = function(startDate) { var sdate = new Date(startDate.replace( ...

随机推荐

  1. WebAPI实例

    @{ ViewBag.Title = "About"; } @*<script src="~/Scripts/jquery-1.7.1.min.js"&g ...

  2. 数据库建表并返回给前端 - (mysql-thinkphp) (3)

    1.先建一个表,你可以用mysql代码建,也可以用thinkphp建,也可以视图建,我用不到太复杂的,就用视图建了. 2.配置id为自增,唯一的值,不可重复.主键.要输入中文的选择utf8_gener ...

  3. python操作mongoDB(pymongo的使用)

    pymongo操作手册 连接数据库 方法一(推荐) import pymongo client = pymongo.MongoClient(host="localhost",por ...

  4. DNS 访问 Service【转】

    在 Cluster 中,除了可以通过 Cluster IP 访问 Service,Kubernetes 还提供了更为方便的 DNS 访问. kubeadm 部署时会默认安装 kube-dns 组件. ...

  5. Mozilla Firefox 将获得包含 Tor 模式的扩展组件

    据外媒报道,Firefox 浏览器可能很快就会收到一个 Tor 模式的附加组件,它将通过连接 Tor 网络显著增强隐私功能.虽然 Mozilla 和 Tor 团队的最终目标是在浏览器上实现完整功能的 ...

  6. loadBeanDefinitions方法源码跟踪(二)

    因为字数超过了限制,所以分成了三篇,承接上篇: https://www.jianshu.com/p/a0cfaedf3fc5 代码过宽,可以shift + 鼠标滚轮 左右滑动查看 3.parseDef ...

  7. (转)CentOS/Debian/Ubuntu系统 TCP-BBR 一键安装脚本

    本脚本适用环境 系统支持:CentOS 6+,Debian 7+,Ubuntu 12+ 虚拟技术:OpenVZ 以外的(KVM.Xen.VMware等) 内存要求:≥128M 日期 :2017 年 0 ...

  8. ②java基础——标识符、关键字和基础数据类型

    Java标识符: 1.由英文字母.数字._(下划线)和$组成,长度不限.其中英文字母包含大写字母(A~Z)和小写字母(a~z),数字包含0到9 2.标识符的第一个字符不能是数字(即标识符不能以数字开头 ...

  9. python用于web题里写解密脚本

    题源自bugku里的WEB3 选择选项让他停止,F12后出现如下代码,一看数字就知道是ASC: 复制出来,写pyhton脚本如下,在编译器里跑一下 s='KEY{J2sa42ahJK-HS11III} ...

  10. uniapp 小程序实现自定义底部导航栏(tarbar)

    在小程序开发中,默认底部导航栏很难满足实际需求,好在官方给出了自定义形式,效果如下: 话不多说,直接上代码 1.组件 custom-tarbar.vue文件 <template> < ...