//obtain timestamp of last week
var now=new Date()
var nowDayOfWeek = now.getDay(); //今天本周的第几天
var nowDay = now.getDate(); //当前日
var nowMonth = now.getMonth(); //当前月
var nowYear = now.getFullYear(); //当前年
//obtain time of last month
var lastMonthDate = new Date(); //上月日期
lastMonthDate.setDate(1);
lastMonthDate.setMonth(lastMonthDate.getMonth() - 1);
var lastMonth = lastMonthDate.getMonth();
//obtain timestamp of yesterday
var dateForYestd=new Date()
var yestdTime = Math.floor(dateForYestd.getTime()/1000)-86400
var yestd_time = new Date(yestdTime*1000)
yestd_time.setHours(0,0,0)
var yestd_start = yestd_time.getTime()/1000 //yesterday start
yestd_time.setHours(23,59,59)
var yestd_end = yestd_time.getTime()/1000 //yesterday end
console.log(yestd_start, yestd_end)
//格式化日期:yyyy-MM-dd
function formatDate(date) {
var myyear = date.getFullYear();
var mymonth = date.getMonth() + 1;
var myweekday = date.getDate();
var myHour = date.getHours();
var myMinute = date.getMinutes();
var mySecond = date.getSeconds();
if (mymonth < 10) {
mymonth = "0" + mymonth;
}
if (myweekday < 10) {
myweekday = "0" + myweekday;
}
if (myHour < 10) {
myHour = "0" + myHour;
}
if (myMinute < 10) {
myMinute = "0" + myMinute;
}
if (mySecond < 10) {
mySecond = "0" + mySecond;
}
return (myyear+"-"+mymonth+"-"+myweekday+" "+myHour+":"+myMinute+":"+mySecond)
}
//获得某月的天数
function getMonthDays(myMonth) {
var monthStartDate = new Date(nowYear, myMonth, 1);
var monthEndDate = new Date(nowYear, myMonth + 1, 1);
var days = (monthEndDate - monthStartDate) / (1000 * 60 * 60 * 24);
return days;
}
//获得上周的开始日期
function getLastWeekStartDate(hour,minute,second) {
var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek - 6,hour,minute,second)
return formatDate(weekStartDate)
}
//获得上周的结束日期
function getLastWeekEndDate(hour,minute,second) {
var weekEndDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek,hour,minute,second)
return formatDate(weekEndDate);
}
//获得上月开始时间
function getLastMonthStartDate(hour,minute,second) {
if (lastMonth == 11) {
nowYear = nowYear - 1
}
var lastMonthStartDate = new Date(nowYear, lastMonth, 1, hour,minute,second);
return formatDate(lastMonthStartDate);
}
//获得上月结束时间
function getLastMonthEndDate(hour,minute,second) {
var lastMonthEndDate = new Date(nowYear, lastMonth, getMonthDays(lastMonth), hour,minute,second);
return formatDate(lastMonthEndDate);
}
//time to timestamp
var weekStart = new Date(getLastWeekStartDate('00','00','00'))
var weekEnd = new Date(getLastWeekEndDate('23','59','59'))
var monthStart = new Date(getLastMonthStartDate('00','00','00'))
var monthEnd = new Date(getLastMonthEndDate('23','59','59'))
 
//change starttime and endtime
var start_time = Math.floor(weekStart.getTime()/1000)
var end_time = Math.floor(weekEnd.getTime()/1000)
 var month_start = Math.floor(monthStart.getTime()/1000)
var month_end = Math.floor(monthEnd.getTime()/1000)
console.log(start_time, end_time, month_start, month_end )
 
 
 

js获取昨天/上周/上个月开始和结束的时间戳,可以设置时分秒 js obtain start and end timestamp of yesterday/last week/last month, with set of hour/minute/second的更多相关文章

  1. js 获取当天23点59分59秒 时间戳 (最简单的方法)

    js 获取当天23点59分59秒 时间戳 (最简单的方法) new Date(new Date(new Date().toLocaleDateString()).getTime()+24*60*60* ...

  2. js获取昨天日期

    刚刚js做项目,遇到需要获取昨天日期的问题,网上找了下答案,感觉网上的答案都不太严谨,自己写了个,凑合能用吧,忘大神们抛砖指教. <script type="text/javascri ...

  3. js获取昨天今天和明天

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/UP19910522/article/details/30028299 <html> &l ...

  4. JS获取昨天/今天/今年第一天的方法

    talk is cheap,show me the code! //获取昨天 var day1 = new Date(); day1.setTime(day1.getTime()-24*60*60*1 ...

  5. js 获取昨天,今天,本周,上周,季度等时间范围(封装的js)

    (function ($, ht) { "use strict"; $.extend(ht, { clickTimeRange:function(){ //点击重置按钮,时间文本框 ...

  6. js获取昨天,最近7天,最近30天通用方法

    function formatDate (val) { // 格式化时间 let start = new Date(val) let y = start.getFullYear() let m = ( ...

  7. JS获取今天和上个月的今天

    function getLastMonth(){ var now=new Date(); var year = now.getFullYear();//getYear()+1900=getFullYe ...

  8. js获取日期当天的开始时间和结束时间

    //函数调用传参格式为 2018-6-6或者2018.6.6//如:startUnix(2018-6-6) 返回的时间戳格式‘1528300799’ function startUnix($date) ...

  9. 讨论一下js获取响应中后台传回来的BigInteger类型的数字时,后几位会自动变为0的问题

    后台返回的json:{"data":12345678912345678912} 在js中获取该data得到的值为:12345678912345680000 后经过实验发现,只有数字 ...

随机推荐

  1. UML总结

    http://www.cnblogs.com/riky/archive/2007/04/07/704298.html

  2. 网络基础 05_DHCP

    1 DHCP概述 DHCP (Dynamic Host Configuration Protocol)是一种动态的向Internet终端提供配置参数的协议.在终端提出申请之后,DHCP可以向终端提供I ...

  3. ui7

    2016.9讲义 一.课程的主要内容和目的 二.课程所用工具软件——Photoshop CS6 1. Photoshop 的发展史 1990.2,ps1.0问世,1991.2,PS2.0发行,此后,进 ...

  4. UI1

    计算机工程系     目 录   实验一 Photoshop基本界面熟悉 3 实验二 PhotoShop常用工具的使用 4 实验三 图象和图层的处理 7 实验四 各种滤镜方式的处理 13 实验五 Ph ...

  5. 一种很有意思的数据结构:Bitmap

    昨晚遇到了一种很有意思的数据结构,Bitmap. Bitmap,准确来说是基于位的映射.其中每个元素均为布尔型(0 or 1),初始均为 false(0).位图可以动态地表示由一组无符号整数构成的集合 ...

  6. [转] 遇见 TiDB - 分布式关系数据库

    [From] http://kuaibao.qq.com/s/20180510G0UFL000?refer=cp_1026 最近TiDB掀起了一波分布式数据库的热潮,公司也在着手准备TiDB的落地工作 ...

  7. Zynq-7000 FreeRTOS(二)中断:串口Uart中断

    总结Zynq-7000器件的PS上的串口中断,为FreeRTOS中断实验做准备.

  8. CentOS 7 主机名bogon解决办法

    转https://blog.csdn.net/qq_24221531/article/details/80334942 一.修改linux主机的配置文件/etc/hostname 和 /etc/hos ...

  9. 【ORACLE】ID 2299494.1 安装Oracle 11g 86%报错:Error in invoking target 'agent nmhs' of makefile

    参考: ID 2299494.1 In this Document   Symptoms   Changes   Cause   Solution   References APPLIES TO: O ...

  10. 【es6】数值扩展