js获取下月时间_js 获取 本周、下周、本月、下月、本季度、下季度的开始结束日期...

js 获取 本周、上周、本月、上月、本季度、上季度的开始结束日期

/**

* 获取本周、本季度、本月、上月的开始日期、结束日期

*/

var now = new Date(); //当前日期

var nowDayOfWeek = now.getDay(); //今天本周的第几天

var nowDay = now.getDate(); //当前日

var nowMonth = now.getMonth(); //当前月

var nowYear = now.getYear(); //当前年

nowYear += (nowYear < 2000) ? 1900 : 0; //

var lastMonthDate = new Date(); //上月日期

lastMonthDate.setDate(1);

lastMonthDate.setMonth(lastMonthDate.getMonth() - 1);

var lastYear = lastMonthDate.getYear();

var lastMonth = lastMonthDate.getMonth();

//格式化日期:yyyy-MM-dd

function formatDate(date) {

var myyear = date.getFullYear();

var mymonth = date.getMonth() + 1;

var myweekday = date.getDate();

if (mymonth < 10) {

mymonth = "0" + mymonth;

}

if (myweekday < 10) {

myweekday = "0" + myweekday;

}

return (myyear + "-" + mymonth + "-" + myweekday);

}

//获得某月的天数

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 getQuarterStartMonth() {

var quarterStartMonth = 0;

if (nowMonth < 3) {

quarterStartMonth = 0;

}

if (2 < nowMonth && nowMonth < 6) {

quarterStartMonth = 3;

}

if (5 < nowMonth && nowMonth < 9) {

quarterStartMonth = 6;

}

if (nowMonth > 8) {

quarterStartMonth = 9;

}

return quarterStartMonth;

}

//获得本周的开始日期

function getWeekStartDate() {

var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek);

return formatDate(weekStartDate);

}

//获得本周的结束日期

function getWeekEndDate() {

var weekEndDate = new Date(nowYear, nowMonth, nowDay + (6 - nowDayOfWeek));

return formatDate(weekEndDate);

}

//获得上周的开始日期

function getLastWeekStartDate() {

var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek - 7);

return formatDate(weekStartDate);

}

//获得上周的结束日期

function getLastWeekEndDate() {

var weekEndDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek - 1);

return formatDate(weekEndDate);

}

//获得本月的开始日期

function getMonthStartDate() {

var monthStartDate = new Date(nowYear, nowMonth, 1);

return formatDate(monthStartDate);

}

//获得本月的结束日期

function getMonthEndDate() {

var monthEndDate = new Date(nowYear, nowMonth, getMonthDays(nowMonth));

return formatDate(monthEndDate);

}

//获得上月开始时间

function getLastMonthStartDate() {

var lastMonthStartDate = new Date(nowYear, lastMonth, 1);

return formatDate(lastMonthStartDate);

}

//获得上月结束时间

function getLastMonthEndDate() {

var lastMonthEndDate = new Date(nowYear, lastMonth, getMonthDays(lastMonth));

return formatDate(lastMonthEndDate);

}

//获得本季度的开始日期

function getQuarterStartDate() {

var quarterStartDate = new Date(nowYear, getQuarterStartMonth(), 1);

return formatDate(quarterStartDate);

}

//或的本季度的结束日期

function getQuarterEndDate() {

var quarterEndMonth = getQuarterStartMonth() + 2;

var quarterStartDate = new Date(nowYear, quarterEndMonth,

getMonthDays(quarterEndMonth));

return formatDate(quarterStartDate);

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/567051.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为手机显示解析服务器返回错误,ajax服务器返回错误

ajax服务器返回错误 内容精选换一换查询指定备份策略下的标签信息。URI格式GET /v2/{project_id}/backuppolicy/{policy_id}/tagsGET /v2/{project_id}/backuppolicy/{policy_id}/tags参数说明参数是否必选描述project_id是项目IDpolicy_id是策略ID请求示例GET /查询所有备份策…

已知弧长计算器_科学计算器,怎么用弧度计算弧长,请知道的举例说明,

展开全部大家好知道弧度的半径是6184.弦长是3120怎么算弧长&#xff0c;最好把详e69da5e6ba903231313335323631343130323136353331333363366236细的过程和结果发给我&#xff0c;用科学计算器要怎么按的方法写出来谢谢了要不然不懂的怎么用计算器算以后换了数字就不知道怎么算了…

pandas 对某一行标准化_Python中的神器Pandas,但是有人说Pandas慢...

如果你从事大数据工作&#xff0c;用Python的Pandas库时会发现很多惊喜。Pandas在数据科学和分析领域扮演越来越重要的角色&#xff0c;尤其是对于从Excel和VBA转向Python的用户。所以&#xff0c;对于数据科学家&#xff0c;数据分析师&#xff0c;数据工程师&#xff0c;Pand…

element引入的组件大小高度不对_Angular 2:尝试使用ElementRef访问组件高度时的奇怪行为...

我试图在Angular2中创建一个图像滑块&#xff0c;如下所示 .Slide Caption #1Slide Caption #2在我的滑块组件中&#xff0c;我希望能够获得每张幻灯片的高度&#xff0c;因此我使用ContentChildren获取滑块内的幻灯片列表&#xff0c;并且还将ElementRef导入到幻灯片组件以便访…

罗盘时钟编码代码_安全研究 | 利用macOS Dock实现代码的持久化执行

背景介绍近期&#xff0c;我一直在研究macOS上的一些持久化技术&#xff0c;尤其是如何利用低等级用户权限来修改文件以影响用户交互。对于macOS终端用户来说&#xff0c;交互最频繁的当属Dock了。在我的研究过程中&#xff0c;我发现了一个plist文件&#xff0c;它可以控制App…

mysql 共享锁_mysql有排他锁为什么还需要共享锁呢?

两把锁缺一不可&#xff0c;InnoDB 引擎中的四种隔离级别就是用 排他锁 共享锁 实现的。下面是个人理解&#xff0c;可能并不严谨。首先说一下并发可能产生的四种问题&#xff0c;如果你还不了解这四个问题&#xff0c;最好拿至少 20 分钟时间模拟一下场景。假设有两个事务A&a…

xpress-mp优化实例精选_量化研究每周精选-20170711

本周为大家精选了5项机器学习/深度学习在量化投资中的相关资源&#xff0c;机器学习/深度学习是偏实践性学科&#xff0c;只有不断实践才能有所收获&#xff0c;纸上得来终觉浅&#xff0c;绝知此事要躬行&#xff01;BigQuant拥有海量的数据和主流开源框架&#xff0c;附能每一…

mac 删除分区 command r 选择网络_Mac使用必看基础篇,Mac快捷键大全,mac新手入门指南...

你是Mac新手吗&#xff1f;你对使用Mac电脑有疑问吗&#xff1f;你还不知道mac有哪些快捷键吗&#xff1f;别着急&#xff0c;来看看小编给大家准备的Mac使用必看基础篇——Mac快捷键大全&#xff0c;对于新手用户很有帮助哦&#xff01;&#xff01;一、开机相关命令快捷键C:从…

不同版本的mysql_windows下如何让多个个不同版本的mysql共存-百度经验

第十步&#xff0c;在解压目录下&#xff0c;编写mysql的配置文件my.ini,注意basedir,datadir&#xff0c;与自己的解压目录是一致的---------------------------------------------[mysqld]# 设置3307端口port3307# 设置mysql的安装目录basedirC:\\mysql8# 设置mysql数据库的数…

mysql have_mysql having的用法

having字句可以让我们筛选成组后的各种数据&#xff0c;where字句在聚合前先筛选记录&#xff0c;也就是说作用在group by和having字句前。而 having子句在聚合后对组记录进行筛选。我的理解就是真实表中没有此数据&#xff0c;这些数据是通过一些函数生存。SQL实例&#xff1a…

无法执行二进制文件: 可执行文件格式错误_VB中.frm .frx .vbp .vbw .scc文件都有什么作用,你知道么?...

.frm 是每个窗体都有的&#xff0c;保存窗体的代码&#xff0c;你可以用记事本打开&#xff1b;.frx 窗体里使用图片、图标等资料&#xff0c;保存的是资源&#xff1b;.vbp 和.vbw 保存一个工程时他会自动生成这两个文件。.vbp 是关键的文件&#xff0c;它用来保存当前工程中的…

共享文件原理_fishhook 的实现原理浅析

| 作者&#xff1a;小可长江&#xff0c;目前在 bilibili 做音视频研发&#xff0c;业余时间喜欢研究好的源码和逆向打开姿势很重要早些时候&#xff0c;iOS中一提到“黑魔法”、HOOK&#xff0c;很多人第一时间想到的就是 AOP RunTime MethodSwizzling 这些不明觉厉的东西&…

ef power tools mysql_使用 EF Power Tool Code Frist 生成 Mysql 实体

使用 EF Power Tool Code Frist 生成 Mysql 实体1&#xff0c;在要生成的项目上右键2,3,4,5, 生成后的效果已知问题&#xff1a;1&#xff0c;在Mysql数据表中 tinyint(1) ,会被映射成为 C# bool &#xff0c;这样造成一些数据信息的丢失。 这个问题应该是EF 工具的问题&#…

python数据可视化散点图案例_Python数据可视化—散点图_python 数据可视化

Python数据可视化—散点图 PS: 翻了翻草稿箱&#xff0c; 发现居然存了一篇去年2月的文章。。。虽然naive&#xff0c;还是发出来吧。。。 本文记录了Python中的数据可视化——散点图scatter&#xff0c; 令x作为数据&#xff08;50个点&#xff0c;每个30维&#xff09;&#…

redis解决mysql主从延迟_mysql主从同步延迟问题解决方法

mysql主从同步延迟问题解决方法&#xff1a;在从服务器上执行show slave status;可以查看到很多同步的参数&#xff0c;我们需要特别注意的参数如下&#xff1a;Master_Log_File&#xff1a; SLAVE中的I/O线程当前正在读取的主服务器二进制日志文件的名称…

python重复元素判定_30段极简Python代码:这些小技巧你都Get了么

选自 | towardsdatascience转自 | 机器之心Python 是机器学习最广泛采用的编程语言&#xff0c;它最重要的优势在于编程的易用性。如果读者对基本的 Python 语法已经有一些了解&#xff0c;那么这篇文章可能会给你一些启发。作者简单概览了 30 段代码&#xff0c;它们都是平常非…

mysql主从数据库同步问题_聊聊MySQL主从数据库同步的那些事儿

在linux服务器下测试&#xff1a;主(master)服务器IP&#xff1a;219.223.5.105(对应内网IP&#xff1a;192.168.1.75)从(slave)服务器IP&#xff1a;219.223.5.104(对应内网IP&#xff1a;192.168.1.74)一、修改主服务器master[mysqld]log-binmysql-bin //[必须]启用二进制日…

360浏览器广告太多怎么办_360浏览器如何关闭广告自动推送

点击蓝字关注我们大家是不是在用360浏览器上网的时候经常会跳出广告来&#xff0c;这些广告有些时候是很烦人的&#xff0c;然而这些广告是能够关闭的&#xff0c;现在我们针对360浏览器&#xff0c;介绍如果关闭自动推送的广告。首先在360浏览器的右上方找到三条杠的“大队长”…

linux下php支持mysql_linux下php扩展mysqli的支持 .

mysqli是优化后的mysql&#xff0c;具体的优点baidu下就ok了cd php-5.2.8 在这下面有个ext文件夹里有mysqlicd ext/mysqlilinux下将源码文件编译应该都有configure吧&#xff0c;可这里没有&#xff0c;在我们已经安装php后&#xff0c;php5这个文件夹里的命令目录bin里有一个…

代码合并工具_作为程序员你必须知道的几款代码比较工具

在程序开发的过程中&#xff0c;程序员会经常对源代码以及库文件进行代码对比&#xff0c;在这篇文章里我们向大家介绍几款程序员常用的代码比较工具。WinMergeWinMerge是一款运行于Windows系统下的文件比较和合并工具&#xff0c;使用它可以非常方便地比较多个文档内容&#x…