js,将日期时分秒等格式化和转化
1.将js Date对象格式化为指定格式,添加一个原型方法
/**
* 返回指定format的string
* format eg:'yyyy-MM-dd hh:mm:ss'
**/
Date.prototype.format = function(format) {
var o = {
"M+": this.getMonth() + 1,
"d+": this.getDate(),
"h+": this.getHours(),
"m+": this.getMinutes(),
"s+": this.getSeconds(),
"q+": Math.floor((this.getMonth() + 3) / 3),
"S": this.getMilliseconds()
}
if (/(y+)/.test(format)) {
format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
}
for (var k in o) {
if (new RegExp("(" + k + ")").test(format)) {
format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));
}
}
return format;
} 使用如:
new Date().format('yyyy-MM-dd'); // echo: '2015-12-01'
2.得到昨天 (永远相对于今天的前一天)
// 得到昨天的日期 返回昨天
function yesterday() {
var today = new Date();
var the_yesterday = today.setDate(today.getDate() - 1);
return the_yesterday;
}
3. 得到上一个月的今天
// 得到近一个月 返回上一个月的今天
function lastMonth() {
var today = new Date();
var month = today.getMonth();
var the_last_month;
if (month == 0) {
the_last_month = today.setMonth(11);
} else {
var the_last_month = today.setMonth(month - 1);
}
the_last_month = new Date(the_last_month).format('yyyy-MM-dd');
return the_last_month;
}
4.得到指定格式的最近一周 返回一个数组
// 得到近一周 返回数组 (note: 这里的format使用了上面的用来format原型方法)
function lastWeek(format) {
var today = new Date();
var the_week = [];
var format = format || 'yyyy-MM-dd';
for (var i = 1; i < 8; i++) {
var temp = today.setDate(today.getDate()-1);
temp = new Date(temp).format(format);
the_week.unshift( temp );
};
return the_week;
}
5.得到近n天 返回一个数组
// 得到近n天 返回数组
function lastNDay(days,format) {
var today = new Date();
var the_days = [];
var format = format || 'yyyy-MM-dd';
for (var i = 1; i < days+1; i++) {
var temp = today.setDate(today.getDate()-1);
temp = new Date(temp).format(format);
the_days.unshift( temp );
};
return the_days;
} //使用如
lastNDay(7); // 返回最近一周的日期数组 format参数可选 // [ '2011-11-01', '2011-11-02','2011-11-03','2011-11-04','2011-11-05','2011-11-06','2011-11-07' ]
6.把毫秒转换成时长
// 把毫秒转换成时长
// 返回 1.若小于等于60秒,显示秒数
// 2.若大于1分钟小于1小时,显示分钟
// 3.若大于1小时,显示x小时x分钟
function MillisecondToTime(msd) {
var time = parseInt(msd) / 1000;
if (time <= 60) {
time = time + '秒';
return time;
} else if (time > 60 && time < 60 * 60) {
time = parseInt(time / 60) + "分钟";
return time;
} else {
var hour = parseInt(time / 3600) + "小时";
var minute = parseInt(parseInt(time % 3600) / 60) + "分钟";
time = hour + minute;
return time;
}
}
js,将日期时分秒等格式化和转化的更多相关文章
- JS获取年月日时分秒
var d = new Date(); ) + "-" + d.getDate() + " " + d.getHours() + ":" + ...
- JS的日期的知识与格式化
需要知道的JS的日期的知识,都在这了 https://juejin.im/post/5d12b308f265da1b7c612746?utm_source=gold_browser_extension ...
- js实现将时分秒转化成毫秒,将秒转化成时分秒
// 时间转为毫秒 timeToSec(time) { var hour = time.split('[0] var min = time.split('[1] var sec = time.spli ...
- js动态实现时分秒
<div id="time" style="color: #96C2DD;</div> <script type="text/ ...
- jquery.datepair日期时分秒选择器
jquery.datepair是一个轻量级的jQuery插件,智能选择日期和时间范围,灵感来自于谷歌日历.Datepair将保持开始和结束日期/时间同步,并可以根据用户的操作设置默认值.该插件不提供任 ...
- js实现计时 时分秒
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- js获取年月日时分秒星期
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- js 倒计时 (时分秒版本)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- js获取当前时间的年月日时分秒以及时间的格式化
1.获取当前时间 var myDate = new Date(); 2.获取时间中的年月日时分秒 myDate.getYear(); // 获取当前年份(2位) myDate.getFullYear( ...
随机推荐
- redis源代码结构解析
看了黄建宏老师的<Redis设计与实现>,对redis的部分实现有了一个简明的认识: 之前面试的时候被问到了这部分的内容,没有关注,好在还有时间,就把Redis的源码看了一遍. Redis ...
- 【JavaScript】jQuery绑定事件
jquery中直接绑定事件:只能用在程序中一开始就存在的html代码 目标元素.click(function(){ }) jquery中间接绑定事件: 如果目标元素是js生成的,则需要间接绑定事件,用 ...
- 20145202马超 《Java程序设计》第二周学习总结
一.课后练习题目 1.D 并没有给number赋值导致出现错误. 2.A 10/3相当于10=3*3+1: 10/3=3. 3.D 4.D 很明显,byte类型的数据的话300就会出现溢出的情况. 5 ...
- js双轴柱状图
<!doctype html><html lang="en"><head> <script type="text/javascr ...
- 5,Linux之文档与目录结构
Linux文件系统结构 Linux目录结构的组织形式和Windows有很大的不同.首先Linux没有“盘(C盘.D盘.E盘)”的概念.已经建立文件系统的硬盘分区被挂载到某一个目录下,用户通过操作目录来 ...
- (B)springboot配置开发和测试环境并添加启动路径
嗯,开发和测试环境要分离,这是一般共识(虽然我工作过的公司都没有这种分离),spring boot也可以按照配置文件的读取来做到这一点. 上图有三个application开头的配置文件,要达到能够读取 ...
- Android学习记录(3)—Android中ContentProvider的基本原理学习总结
一.ContentProvider简介 当应用继承ContentProvider类,并重写该类用于提供数据和存储数据的方法,就可以向其他应用共享其数据.虽然使用其他方法也可以对外共享数据 ...
- Win10安装bash慢的解决方案
电脑的Win10系统经过最近一年大量软件的装装删删,感觉已经有问题了,而且也存在大量无法清理的垃圾,占用着宝贵的SSD空间... 重新做系统的想法已经有一段时间了,正好赶上Win10的大更新 Crea ...
- 剑指Offer - 九度1503 - 二叉搜索树与双向链表
剑指Offer - 九度1503 - 二叉搜索树与双向链表2014-02-05 23:39 题目描述: 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表.要求不能创建任何新的结点,只能调整树 ...
- 《Cracking the Coding Interview》——第16章:线程与锁——题目5
2014-04-27 20:16 题目:假设一个类Foo有三个公有的成员方法first().second().third().请用锁的方法来控制调用行为,使得他们的执行循序总是遵从first.seco ...