js中转换Date日期格式
在javascript中直接输出Date得到的结果是这样的:
function date(){
var date = new Date();
alert(date);
}
结果是:Mon Jun 15 15:30:46 UTC+0800 2009
这可能不是我们所需要的,因此是需要转换下的,这里就学下我转换的几种方法,不妥之处请指教:
1、得到new Date()型中各个时间级别(年、月、日、时、分、秒)的数:
function date(){
var date = new Date();
var year = date.getFullYear();
var month = date.getMonth()+1; //js从0开始取
var date1 = date.getDate();
var hour = date.getHours();
var minutes = date.getMinutes();
var second = date.getSeconds();
alert(date+" | "+year+"年"+month+"月"+date1+"日"+hour+"时"+minutes +"分"+second+"秒" );
}
得到的结果就是:Mon Jun 15 15:44:50 UTC+0800 2009 | 2009年6月15日15时44分50秒
注意:date.getMonth()得到的月是从0开始的,date所有的get方法除了date.getFullYear()得到的是2009外,其余的get方法得到的数若小于10,都是以单数出现,如6月,date.getMonth()+1 = 6 若要得到两位的自己加上0就可以了,如下面的转换方法。
以下是转换成另两种格式的,和上面是大同小异的:
(1)
//将date型转换为tring
//传来的datetime是:Wed Mar 04 2009 11:05:05 GMT+0800格式 得到结果:2009-06-12 17:18:05
function dateToStr(datetime){
var year = datetime.getFullYear();
var month = datetime.getMonth()+1;//js从0开始取
var date = datetime.getDate();
var hour = datetime.getHours();
var minutes = datetime.getMinutes();
var second = datetime.getSeconds();
if(month<10){
month = "0" + month;
}
if(date<10){
date = "0" + date;
}
if(hour <10){
hour = "0" + hour;
}
if(minutes <10){
minutes = "0" + minutes;
}
if(second <10){
second = "0" + second ;
}
var time = year+"-"+month+"-"+date+" "+hour+":"+minutes+":"+second; //2009-06-12 17:18:05
// alert(time);
return time;
}
(2)
//将date型转换为tring
//传来的datetime是:Wed Mar 04 2009 11:05:05 GMT+0800格式 得到结果:09年06月12日 17时18分
function dateToComm(datetime){
var year = datetime.getFullYear();
var month = datetime.getMonth()+1;//js从0开始取
var date = datetime.getDate();
var hour = datetime.getHours();
var minutes = datetime.getMinutes();
var second = datetime.getSeconds();
if(month<10){
month = "0" + month;
}
if(date<10){
date = "0" + date;
}
if(hour <10){
hour = "0" + hour;
}
if(minutes <10){
minutes = "0" + minutes;
}
if(second <10){
second = "0" + second ;
}
year = year.toString();
year = year.substring(2);
var time1 = year+"年"+month+"月"+date+"日";
var time2 = hour+"时"+minutes+"分";//09年06月12日 17时18分
var time={time1:time1,time2:time2} //json格式
// alert(time);
return time;
}
2、实际应用中经常会遇到加减时间的情况,如:昨天这个时间到今天这个时间间系统共登陆了几次之类的。因此在我们取得当前时间之后就要减去一天或几天。
在此我们现将得到的时间转换下:
function date(){
var date = new Date();
var dateNum date.getTime();
alert(dateNum);
}
得到的是:2592000000 这个是距 1970 年 1 月 1 日之间的毫秒数。
注:getTime() 方法可返回距 1970 年 1 月 1 日之间的毫秒数。
我们以一天为例,得到一天前的此时:
function date(){
var date = new Date();
var oneDate = 1
var dateMid = date.getTime() - (oneDate * 24 * 60 * 60 * 1000)
var dateBefore = new Date(dateMid);
alert(dateBefore);
}
若date 为:Mon Jun 15 15:44:50 UTC+0800 2009
则输出:Mon Jun 14 15:44:50 UTC+0800 2009
要转换为Sreing型 按照上面1的方法转换就可以了。
那如何用js格式化date日期值呢?
1.js方法返回值:2015-03-19
- var formatDate = function (date) {
- var y = date.getFullYear();
- var m = date.getMonth() + 1;
- m = m < 10 ? '0' + m : m;
- var d = date.getDate();
- d = d < 10 ? ('0' + d) : d;
- return y + '-' + m + '-' + d;
- };
2.js方法返回值:2015-03-19 12:00
- var formatDateTime = function (date) {
- var y = date.getFullYear();
- var m = date.getMonth() + 1;
- m = m < 10 ? ('0' + m) : m;
- var d = date.getDate();
- d = d < 10 ? ('0' + d) : d;
- var h = date.getHours();
- var minute = date.getMinutes();
- minute = minute < 10 ? ('0' + minute) : minute;
- return y + '-' + m + '-' + d+' '+h+':'+minute;
- };
调用:formatDate(Date()) formatDate(Date())
如何将2015-03-12 12:00 转换成标准时间()?
Thu Mar 19 2015 12:00:00 GMT+0800 (中国标准时间)
js方法返回值:Thu Mar 19 2015 12:00:00 GMT+0800 (中国标准时
- var parserDate = function (date) {
- var t = Date.parse(date);
- if (!isNaN(t)) {
- return new Date(Date.parse(date.replace(/-/g, "/")));
- } else {
- return new Date();
- }
- };
调用:parserDate("2015-03-19 12::00:00")
js中转换Date日期格式的更多相关文章
- js转换Date日期格式
有时候做项目会用到js的date日期格式,因为Date()返回的格式不是我们需要的, Date()返回格式: Thu Mar 19 2015 12:00:00 GMT+0800 (中国标准时间) 而我 ...
- js中时间戳与日期格式的相互转换
1. 将时间戳转换成日期格式: function timestampToTime(timestamp) { var date = new Date(timestamp * 1000);//时间戳为10 ...
- mysql中的Date日期格式的问题:只有日期没有时间及格式化时间
只有日期没有时间,把xml中的date改为timestamp 格式化最简单的方法:@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", time ...
- spring,get请求中带date日期格式参数,后台无法转换的问题
今天遇到个很奇怪的问题.前端 的查询条件中带有日期范围日期的格式 是 yyyy-MM-dd HH:mm 结果后台报错 org.springframework.validation.BindExcept ...
- js关于new Date() 日期格式
下面是关于Date的对象 var oDay = new Date(); oDay.getYear(); //当前年份 oDay.getFullYear(); //完整的年月日(xx年,xx月,xx日) ...
- js angular 时间戳转换成日期格式 年月日 yyyy-MM-dd
昨天写项目,要把时间戳转换成日期格式发给后端 我就去网上找 看到的一些都不是我想要的 索性自己就写了一个如图 下面是angular 模式 $scope.getMyDate = function(str ...
- 熟用js中的Date
js中的Date类型是使用UTC(国际协调时间)自1970年1月1日午夜(零时)开始,经过的毫秒数来保存日期. 1. 创建日期对象 ---> 获得当前日期和时间 var now = new ...
- js中的 Date对象 在 IOS 手机中的兼容性问题
项目中有个时间相关的需求,很自然的用到了 js 中的 new Date() 获取时间,浏览器使用模拟手机模式访问没有问题,但是真机测试时发现,ios系统的手机无法显示时间. 定位问题发现是 new D ...
- JavaScript -- 时光流逝(五):js中的 Date 对象的方法
JavaScript -- 知识点回顾篇(五):js中的 Date 对象的方法 Date 对象: 用于处理日期和时间. 1. Date对象的方法 <script type="text/ ...
随机推荐
- 应用Css美化表单
原来的效果 美化之后的效果 实现代码 <style> .container { margin:0auto; width:620px; } fieldset { padding:18px ...
- asp.net中Ajax控件的用途(一)
1,UpdatePanel控件,用户更新部分内容,示例 放入一个Label和一个Button,单击按钮,label显示当前时间. 2,ScriptManagerProxy控件,每个页面只能有一个Scr ...
- iOS版本比较方法
之前一直把版本号转换为floatValue,但是最近在项目中又出现了float的问题,主要是 NSString表示为@"17.30",转换为floatValue 值为17.2999 ...
- C# ~ 从 IEnumerable / IEnumerator 到 IEnumerable<T> / IEnumerator<T> 到 yield
IEnumerable / IEnumerator 首先,IEnumerable / IEnumerator 接口定义如下: public interface IEnumerable /// 可枚举接 ...
- Monotype推出基于HTML5的Web字体平台
著名字体公司Monotype近日宣布推出基于HTML5的Web字体平台,设计者可以访问近10万字体的目录. Monotype推出基于HTML5的Web字体平台 Monotype推出基于HTML5的We ...
- 使用ASP.NET 4的自动启动特性,解决ASP.NET第一次访问速度慢问题
些web应用在可以处理用户访问之前,需要装载很多的数据,或做一些花费很大的初始化处理.今天使用 ASP.NET 的开发人员经常使用应用的Global.asax 文件中的 “Application_St ...
- jquery练习(一次性赋予多个属性值)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 操作系统与c语言
以下是根据看书后的理解做的总结: 最早,unix是使用汇编编写,但是非常简单.后来觉得汇编,换种机器又得重新用另外一种机器汇编重写,太麻烦.于是想设计一种通用的语言,到各种机器上都能运行 当时 ...
- .NET删除字节数组中的0字节
private static byte[] Decode(byte[] packet) { ; while (packet[i] == 0) { --i; } ]; Array.Copy(packet ...
- quartz TRIGGER_STATE变为ERROR解决方法
今天,项目组一个同事说开发环境一直正常quartz定时任务今天不跑了,因为异常已经封装了,所以应该不是没有捕获异常导致.也检查了JobDetail肯定没有重复的任务,最后检查qrtz_triggers ...