js获取本周,本月,本季度开始结束时间

2024-04-13 14:36

本文主要是介绍js获取本周,本月,本季度开始结束时间,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

<script>     

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;  //     

    

//格式化日期: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 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 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);     

}     

    

alert(getQuarterEndDate());     

</script>    

这篇关于js获取本周,本月,本季度开始结束时间的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/900404

相关文章

问题:第一次世界大战的起止时间是 #其他#学习方法#微信

问题:第一次世界大战的起止时间是 A.1913 ~1918 年 B.1913 ~1918 年 C.1914 ~1918 年 D.1914 ~1919 年 参考答案如图所示

时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测

时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测 目录 时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测基本介绍程序设计参考资料 基本介绍 MATLAB实现LSTM时间序列未来多步预测-递归预测。LSTM是一种含有LSTM区块(blocks)或其他的一种类神经网络,文献或其他资料中LSTM区块可能被描述成智能网络单元,因为

java中查看函数运行时间和cpu运行时间

android开发调查性能问题中有一个现象,函数的运行时间远低于cpu执行时间,因为函数运行期间线程可能包含等待操作。native层可以查看实际的cpu执行时间和函数执行时间。在java中如何实现? 借助AI得到了答案 import java.lang.management.ManagementFactory;import java.lang.management.Threa

js+css二级导航

效果 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Con

时间服务器中,适用于国内的 NTP 服务器地址,可用于时间同步或 Android 加速 GPS 定位

NTP 是什么?   NTP 是网络时间协议(Network Time Protocol),它用来同步网络设备【如计算机、手机】的时间的协议。 NTP 实现什么目的?   目的很简单,就是为了提供准确时间。因为我们的手表、设备等,经常会时间跑着跑着就有误差,或快或慢的少几秒,时间长了甚至误差过分钟。 NTP 服务器列表 最常见、熟知的就是 www.pool.ntp.org/zo

20170723 做的事 ecdsa的签名验证时间短于bls signature

1 今天在虚拟机 /home/smile/Desktop/20170610/Test//time_ecdsa 文件夹下,找到ecdsa的验证时间是 989.060606μs μs 先 make ,然后run。 再取BLS的签名生成时间: ./run  2  gnuplot 画图,画对比的时间 gnuplot 画图参考教程 http://blog.sciencen

【青龙面板辅助】JD商品自动给好评获取京豆脚本

1.打开链接 开下面的链接进入待评价商品页面 https://club.jd.com/myJdcomments/myJdcomments.action?sort=0 2.登陆后执行脚本 登陆后,按F12键,选择console,复制粘贴以下代码,先运行脚本1,再运行脚本2 脚本1代码 可以自行修改评价内容。 var content = '材质很好,质量也不错,到货也很快物流满分,包装快递满

js小题:通过字符串执行同名变量怎么做

在JavaScript中,你不能直接使用一个字符串来直接引用一个变量,因为JavaScript是一种静态类型语言(尽管它的类型在运行时可以变化),变量的名字在编译时就被确定了。但是,有几种方法可以实现类似的功能: 使用对象(或Map)来存储变量: 你可以使用一个对象来存储你的变量,然后使用字符串作为键来访问这些变量。 let myVars = { 'var1': 'Hello', 'var

Python几种建表方法运行时间的比较

建立一个表[0,1,2,3.......10n],下面几种方法都能实现,但是运行时间却截然不同哦 import time#方法一def test1(n):list=[]for i in range(n*10):list=list+[i]return list#方法二def test2(n):list=[]for i in range(n*10):list.append(i)#方法三d

图形编辑器基于Paper.js教程03:认识Paper.js中的所有类

先来认一下Paper的资源对象,小弟有哪些,有个整体的认识。认个脸。 在Paper.js的 官方文档中类大致有如下这些: 基类: ProjectViewItemPointToolSizeSegmentRectangleCurveCurveLocationMatrixColorStyleTweenToolEventGradientGradientStopEvent 二级或三级类 继承Ite