业务需要需要获取当前日期相隔30天内的全部日期以及星期几,没插件因此特地写了一个:

/*
说明:获取当前日期或者某个日期相隔N天内的全部日期以及星期几
使用:
let test = new getdiffdate(2, '2019-08-08')
console.log(test.getdiffdate());
*/
class Getdiffdate {
/**
* @param {Number} n //必传,相隔多少天
* @param {String} stime //可选,开始日期,如2019-08-08,不传则为当前时间
*/
constructor(n, stime) {
this.n = n
this.stime = stime
}
getdiffdate () {
let weekArray = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]
let i = 0 //数组key值
let diffdate = [] //存放时间数组
let week = '' //当前星期几
// 开始时间
let stime_date = this.stime ? new Date(this.stime) : new Date()
let stime_stamp = stime_date.getTime()
week = weekArray[stime_date.getDay()]
// 结束时间
let etime_date = new Date(stime_date)
etime_date.setDate(stime_date.getDate() + this.n)
let etime_stamp = new Date(etime_date).getTime()
//未设置开始时间,格式化当前时间
if (!this.stime) {
this.stime = this._getdate(stime_date)
}
//开始日期小于等于结束日期,并循环
while (stime_stamp <= etime_stamp) {
let day_obj = { date: this.stime, week: week }
diffdate[i] = day_obj;
//增加一天时间戳后的日期
let next_date = stime_stamp + (24 * 60 * 60 * 1000);
let next_date_obj = new Date(next_date)
this.stime = this._getdate(next_date_obj)
week = weekArray[next_date_obj.getDay()]
i++;
stime_stamp = next_date
}
return diffdate
}
// 格式化时间
_getdate (date) {
let etime_date_y = date.getFullYear() + '-';
let etime_date_m = (date.getMonth() + 1 < 10) ? '0' + (date.getMonth() + 1) + '-' : (date.getMonth() + 1) + '-';
let etime_date_d = (date.getDate() < 10) ? '0' + date.getDate() : date.getDate();
let fomatterdate = etime_date_y + etime_date_m + etime_date_d
return fomatterdate
}
} export default Getdiffdate

  

获取当前日期或者某个日期相隔N天内的全部日期以及星期几的更多相关文章

  1. Oracle 获取当前日期及日期格式

    http://blog.sina.com.cn/s/blog_6168ee920100l2ye.html Oracle 获取当前日期及日期格式 获取系统日期:  SYSDATE()   格式化日期:  ...

  2. JS获取当前日期时间及JS日期格式化

    Js获取当前日期时间: var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份( ...

  3. python获取当前日期前后N天或N月的日期

    # -*- coding: utf-8 -*- '''获取当前日期前后N天或N月的日期''' from time import strftime, localtime from datetime im ...

  4. Java -- 获取当前日期、当月月初日期、月末日期

    Learn From:http://blog.csdn.net/sunhuwh/article/details/39161323 public class CalendarTest { public ...

  5. 使用sqlserver日期函数获取当前日期

    使用sqlserver日期函数中的getdate()可以获取当现的日期,下面就将为您介绍这种使用sqlserver日期函数获取当前日期的方法,供您参考,希望对您学习sqlserver日期函数有所启迪. ...

  6. PHP 获取当前日期的上个月的日期

    获取当前日期的上个月的日期 <?php /** *参考有: *http://www.oschina.net/code/snippet_96541_4015 *http://stackoverfl ...

  7. Sql Server CONVERT获取当前日期及日期样式

    Sql Server CONVERT获取当前日期及日期样式(转)(2012-06-06 12:00:24) 转载▼ // 标签: 杂谈 分类: SQL Sql Server CONVERT样式 获取当 ...

  8. mysql获取当前日期的周一和周日的日期

    ,,date_format(curdate(),)//获取当前日期 在本周的周一 的日期 ,,date_format(curdate(),)//获取当前日期 在本周的周日 的日期

  9. python里如何获取当前日期前后N天或N月的日期

    #!/usr/bin/python#_*_ coding:UTF-8_*_ import timeimport datetimeimport mathimport calendar ''' time. ...

随机推荐

  1. 【C/C++开发】运算符重载

    c++的一大特性就是重载(overload),通过重载可以把功能相似的几个函数合为一个,使得程序更加简洁.高效.在c++中不止函数可以重载,运算符也可以重载.由于一般数据类型间的运算符没有重载的必要, ...

  2. Android SDK目录说明

    在SDK目录下有很多文件夹,了解这个文件夹都包含哪些内容,更有利于Android的开发,也是作为Android开发者应该了解的.本文就SDK目录进行说明. SDK目录如下: add-ones:Goog ...

  3. idea查看接口或类的所有方法

    第一种: 显示结果: 第二种: 点击左显示栏的Structure: 第三种:ctrl+f12,有的电脑可能需要加fn键

  4. rest_framework之组件大长今

    功能导入快捷查询: from rest_framework import serializers # 序列化from rest_framework.routers import SimpleRoute ...

  5. java--demo之猜拳游戏

    版本1:人机大战  基础随机出    用户键盘录入 package com.hainiu.demo; import java.util.Scanner; /* * 人机大战石头剪刀布 */ publi ...

  6. spring cloud微服务实践七

    在spring cloud 2.x以后,由于zuul一直停滞在1.x版本,所以spring官方就自己开发了一个项目 Spring Cloud Gateway.作为spring cloud微服务的网关组 ...

  7. gin PostForm 方法不起作用

    情景: 在httpie post 下,在 axios post下,总的来说,就是在form-data下只有c.Bind()会有用 如果一定要用c.PostForm() headers必须为x-www- ...

  8. 复杂链表的复制——牛客offer

    题目描述: 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head.(注意,输出结果中请不要返回参数中的节点引用, ...

  9. Java 中的锁原理、锁优化、CAS、AQS 详解!

    来源:jianshu.com/p/e674ee68fd3f 1.为什么要用锁? 锁-是为了解决并发操作引起的脏读.数据不一致的问题. 2.锁实现的基本原理 2.1.volatile Java编程语言允 ...

  10. (二十四)JSP标签之基本标签(<jsp:标签名>)

    一.常用标签 1.1 jsp中标签一共有8中,其中常用的有6中,本文将介绍这6种常用的标签. 1.2 6种标签 1. <jsp:include> <jsp:include>标签 ...