js中转换Date日期格式
2016-04-05 11:22
621 查看
在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 转换成标准时间()?
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")
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")
相关文章推荐
- jsp el表达式
- Json与Xml比较
- Safari5及以下版本不支持Date的横杠字符串格式
- JS限制用户只能输入数字,用正则表达式
- JSP页面间传值问题实例简析
- js获取url参数值的两种方式
- 使用JavaScript
- 考验你的JavaScript底细
- js事件流模型
- Javascript极简主义法定义类
- 变量声明提前
- 【转】js老生常谈之this,constructor ,prototype
- ExtJS表单之复选框CheckboxGroup展示与取值
- angular.js实现列表orderby排序
- ExtJS获取父子、兄弟容器元素方法
- js的call函数
- javascript的概述
- JSP入门教程之基本语法简析
- 【BZOJ 1030】【JSOI 2007】文本生成器 AC自动机+递推
- 如何通过html标记或js代码实现跳转返回页面顶部