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( ...
随机推荐
- nop 插件解析
在计算领域,插件( plug-in or plugin)是将特定的功能增加到大型软件中的软件组件. nopCommerce插件用来扩展nopCommerce的功能.nopCommerce 有几种插件. ...
- Docker虚拟化容器的使用
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Li ...
- python3 练习题100例 (二十)
#!/usr/bin/env python3# -*- coding: utf-8 -*-"""练习二十:判断一个年份是否是闰年公历闰年计算方法:1.普通年能被4整除且不 ...
- ABAP自定义截取字符串长度函数
SAP 中strlen()只能计算字符串的个数,不能计算含有中文字符串的长度,如字符串“SAP大波霸”,strlen('SAP大波霸') = 6,其实真实长度为3+3*2 = 9.我们可以通过cl_a ...
- 笔记-docker-1
笔记-docker-1 1. 简介 1.1. 什么是Docker? Docker 是世界领先的软件容器平台.开发人员利用 Docker 可以消除协作编码时“在我的机器上可正常工作”的问 ...
- PHP.17-文本式留言板
文本式留言板 思路: 1.首页:index.php 添加/查看信息界面 单纯的表单页面,注意留言内容为文本域<textarea> 2.添加信息页面:doAdd.php 1.获取要添加的留 ...
- android Intent onNewIntent 什么时候调用
1.activity A 的lanch model 为singleTop 此刻,A在activity 栈顶,那么就会调用A 的onNewIntent 如果A不在栈顶,则不会调用. 2.activity ...
- 洛谷P1451 求细胞数量
求细胞数量 题目链接 这道题大概是一个最简单的联通块的题了qwq 注意枚举起点的时候 一定不要从0开始不然你就会从0进入到了其他联通块中从而多查. 一定看清题意这道题不是同色为联通块!!! AC代码如 ...
- web开发学习之路是否有尽头
Linux/Git/Pip/Npm/Composer Apache/Ngnix Mysql/MongoDb/Redis PHP/Python/NodeJS javascript/jQuery/Expr ...
- PQFitness
<html> <head> <title></title> <style> *{margin:o;padding:0;} #header{ ...