JS对时间的操作
JS时间操作大全
1、获取每个月的开始和结束。
2、获取每个季度的开始和结束。
3、获取当前季度。
4、把日期转换为字符串(支持各种格式)
...
5、未完待续,不断添加
String.prototype.padingStar=function(totalLength,padingStr="") { if (totalLength <= this.length) { return this; } var padLength = totalLength - this.length; if (padLength <= padingStr.length) { return padingStr.substring(0, padLength) + this; } else { var len = padLength / padingStr.length, n = 1,str=''; while (n<len) { str += padingStr; n++; } return str + padingStr.substring(0, padLength - (n-1) * padingStr.length) +this; } } String.prototype.padingEnd = function (totalLength, padingStr="") { //在开始的补全后面 if (totalLength <= this.length) { return this; } var padLength = totalLength - this.length; if (padLength <= padingStr.length) { return padingStr.substring(0, padLength) + this; } else { var len = padLength / padingStr.length, n = 0,str=''; while (n<len) { str += padingStr; n++; } return this + padingStr.substring(0, padLength - (n - 1) * padingStr.length)+str; } } //获取当前月的开始 Date.prototype.starOfMonth=function() { return new Date(this.getFullYear(), this.getMonth(), 1, 00, 00, 00); } //获取当前月的结束 Date.prototype.endOfMonth=function() { return new Date(this.getFullYear(), this.getMonth() + 1, 0, 23, 59, 59); } //获取当前季度的开始时间 Date.prototype.starofQuarter=function() { return new Date(this.getFullYear(), (this.getQuarter() - 1) * 3, 01, 00, 00, 00); } //获取当前季度的结束时间 Date.prototype.endofQuarter=function() { return new Date(this.getFullYear(), this.getQuarter() * 3-1 , 31, 23, 59, 59); } //获取当前时间对应的季度 Date.prototype.getQuarter=function() { return Math.ceil((this.getMonth() + 1) / 3); } //获取当前时间对应的年的开始 Date.prototype.starOfYear=function() { return new Date(this.getFullYear(), 01, 01, 00, 00, 00); } //获取当前时间对应年的结束 Date.prototype.endOfYear=function() { return new Date(this.getFullYear(), 12, 31, 23, 59, 59); } //把时间格式化为字符串 Date.prototype.toDateString = function(format) { if (typeof (format) == "undefined") { return this.toString(); } //可能我的第一个想法,就是 if (/y{4}/.test(format)) { format = format.replace(/yyyy/g, this.getFullYear()); } if (/y{2}/.test(format)) { format = format.replace(/y{2}/g,this.getFullYear().toString().substr(2)); } if (/M{2}/.test(format)) { format = format.replace(/MM/,this.getMonth().toString().padingStar(2,0)); } if (/dd/.test(format)) { format = format.replace(/dd/,this.getDate().toString().padingStar(2,'0')); } if (/HH/.test(format)) { format = format.replace(/HH/g, this.getHours().toString().padingStar(2, '0')); } if (/hh/.test(format)) { format = format.replace(/hh/g, (hour < 12 ? hour : hour - 12).toString().padingStar(2, '0')); } if (/mm/.test(format)) { format = format.replace(/mm/g, this.getMinutes().toString().padStart(2, '0')); } if (/ss/.test(format)) { format = format.replace(/ss/g, this.getSeconds().toString().padStart(2, '0')); } return format; } //获取两个时间相隔的天数 Date.prototype.betweenDays=function(date) { var daySpan = (Date.parse(this) - Date.parse(date)) / 86400000; return daySpan; }
github地址:https://github.com/gdoujkzz/JsDate.git
JS对时间的操作的更多相关文章
- js对时间的操作相关
摘自网络,我主要用了日期增加若干天之后获得的日期,就是现在是5月2号,我增加30天,应该返回6月几号来着,就是这个意思 用到了Date.prototype.DateAdd 方法,prototype的意 ...
- js中时间的操作
var myDate = new Date();myDate.getYear(); //获取当前年份(2位)myDate.getFullYear(); //获取完整的年份(4位,1 ...
- 关于JS的时间控制实现动态效果及实例操作
关于JS的时间控制 <script> BOM //Bowers Object Model 浏览器对象模型 setTimeout()// 延迟执行一次 ...
- js格式化时间和时间操作
js格式化时间 function formatDateTime(inputTime) { var date = new Date(inputTime); var y = date.getFullYea ...
- jsp+js完成用户一定时间未操作就跳到登录页面
<% String path = request.getContextPath(); String basePath = request.getScheme() + "://" ...
- js中常用的操作
1.js中常用的数组操作 2.js中常用的字符串操作 3.js中常用的时间日期操作 4.定时器
- js的时间操作方法
1.js获取系统时间格式为YYYY-MM-DD HH:MM:SS 1 function curDateTime(){ 2 var d = new Date(); 3 var year = d.getY ...
- Web页面长时间无操作后再获取焦点时转到登录界面
今天开始讲新浪博客搬到博客园. 在工作中遇到的小问题,感觉有点意思,就记录下来吧! 该问题分为两种情况,一.Web页面长时间无操作后,在对其进行操作,比如点击“首页”.“设 ...
- Python3 与 C# 面向对象之~继承与多态 Python3 与 C# 面向对象之~封装 Python3 与 NetCore 基础语法对比(Function专栏) [C#]C#时间日期操作 [C#]C#中字符串的操作 [ASP.NET]NTKO插件使用常见问题 我对C#的认知。
Python3 与 C# 面向对象之-继承与多态 文章汇总:https://www.cnblogs.com/dotnetcrazy/p/9160514.html 目录: 2.继承 ¶ 2.1.单继 ...
随机推荐
- MySQL二进制日志格式对复制的影响
复制的分类 基于SQL语句的复制 - SBR 主库二进制日志格式使用STATEMENT 在MySQL 5.1之前仅存在SBR模式, 又称之为逻辑复制. 主库记录CUD操作的SQL语句, 从库会读取并重 ...
- 基于Spring Aop实现类似shiro的简单权限校验功能
在我们的web开发过程中,经常需要用到功能权限校验,验证用户是否有某个角色或者权限,目前有很多框架,如Shiro Shiro有基于自定义登录界面的版本,也有基于CAS登录的版本,目前我们的系统是基于C ...
- SQL Server学习之路(六):“增删改查”之“查”
0.目录 1.前言 2.最基本的SQL查询语句 3.select...from... 3.1 "*"与"Top num *" 3.2 查询指定列 3.3 Isn ...
- .9-浅析webpack源码之NodeEnvironmentPlugin模块总览
介绍Compiler的构造比较无趣,不如先过后面的,在用到compiler的时候再做讲解. 这一节主要讲这行代码: // 不管这里 compiler = new Compiler(); compile ...
- C#判断ListBox是否显示了水平滚动条/横向滚动条
参看: Windows消息定义网址:http://wenku.baidu.com/link?url=9fesYjbLSDx9_TsLgSZSVoR7ELal-60x2p-lua_iPR44Xfekz0 ...
- Web、WCF和WS通过Nginx共享80端口
团队中的一个Web项目面对的用户网络环境多是在严格的防火墙安全条件下,通常只开放一些标准的端口如80,21等. 上线初期,因忽略了这个问题,除了Web应用是以80端口提供访问外,WCF和WS是以其他端 ...
- python爬虫(二)_HTTP的请求和响应
HTTP和HTTPS HTTP(HyperText Transfer Protocol,超文本传输协议):是一种发布和接收HTML页面的方法 HTTPS(HyperText Transfer Prot ...
- Java中enum的学习总结
一.通常的定义常量的方法 public class Sex{ public final static int MALE = 1; public final static int FEMALE=2; } ...
- poj:4091:The Closest M Points
poj:4091:The Closest M Points 题目 描写叙述 每到饭点,就又到了一日几度的小L纠结去哪吃饭的时候了.由于有太多太多好吃的地方能够去吃,而小L又比較懒不想走太远,所以小L会 ...
- Leetcode 高精度 Plus One
本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie Plus One Total Accepted: 17614 Total Submissio ...