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

  1. var formatDate = function (date) {
  2. var y = date.getFullYear();
  3. var m = date.getMonth() + 1;
  4. m = m < 10 ? ‘0‘ + m : m;
  5. var d = date.getDate();
  6. d = d < 10 ? (‘0‘ + d) : d;
  7. return y + ‘-‘ + m + ‘-‘ + d;
  8. };

2.js方法返回值:2015-03-19 12:00

  1. var formatDateTime = function (date) {
  2. var y = date.getFullYear();
  3. var m = date.getMonth() + 1;
  4. m = m < 10 ? (‘0‘ + m) : m;
  5. var d = date.getDate();
  6. d = d < 10 ? (‘0‘ + d) : d;
  7. var h = date.getHours();
  8. var minute = date.getMinutes();
  9. minute = minute < 10 ? (‘0‘ + minute) : minute;
  10. return y + ‘-‘ + m + ‘-‘ + d+‘ ‘+h+‘:‘+minute;
  11. };  
    调用: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 (中国标准时

  1. var parserDate = function (date) {
  2. var t = Date.parse(date);
  3. if (!isNaN(t)) {
  4. return new Date(Date.parse(date.replace(/-/g, "/")));
  5. } else {
  6. return new Date();
  7. }
  8. };

调用:parserDate("2015-03-19 12::00:00")

时间: 2024-08-08 01:29:38

js中转换Date日期格式的相关文章

js转换Date日期格式

有时候做项目会用到js的date日期格式,因为Date()返回的格式不是我们需要的, Date()返回格式: Thu Mar 19 2015 12:00:00 GMT+0800 (中国标准时间) 而我们则需要这样的格式: 2015-3-19 12:00:00 除非是在后台处理好时间格式,然后在页面直接显示. 那如何用js格式化date日期值呢? 1.js方法返回值:2015-03-19 var formatDate = function (date) { var y = date.getFull

js中使用eval()方法将字符串转换成日期格式、并获取指定时间的日期

1.在js中eval()方法将字符串格式数据转换成日期格式 function getDate(strDate) {         //strDate为需要转换成日期格式的字符串         var date = eval('new Date(' + strDate.replace(/\d+(?=-[^-]+$)/,                 function (a) { return parseInt(a, 10) - 1; }).match(/\d+/g) + ')');    

Date()日期格式转换

/** * 将长时间格式字符串转换为字符串 yyyy-MM-dd HH:mm:ss *  @return */ public static String longToStrng() { String time = "1256006105375";// long型转换成的字符串 Date date = new Date(Long.parseLong(time.trim())); SimpleDateFormat formatter = new SimpleDateFormat("

js中关于date()的扩展

做前端往往会碰到后台传过来的date数据不是需求所需要的样式,后台往往传timestamp类型的,传过来的值为“Mar 30, 2016 10:00:36 AM”格式的,可是页面需要显示“年-月-日”或者“年.月.日”或者“年-月-日 时:分:秒”,需求不同,展示效果不同. 所以,碰到这种情况,就需要我们前端每次在js中转换,除了一些前端框架自带的format方法,(比如说miniUI),我们也可自己对date进行扩展,下面是总结的date数据的扩展,亲测,看代码: /* 关于时间类型的扩展 *

熟用js中的Date

js中的Date类型是使用UTC(国际协调时间)自1970年1月1日午夜(零时)开始,经过的毫秒数来保存日期. 1. 创建日期对象  ---> 获得当前日期和时间  var now = new Date(); --->基于制定的日期和时间创建  var date = new Date(year,month,day,hour,minute,second); 需要注意的就是,Date.prototype中的方法都是基于UTC时间的,所以这些方法中month(0-11).day(1-31).星期几(

js中字符串转换为日期和比较大小

本文转载于:http://yun342173024.iteye.com/blog/1873756在做前端校验的时候,要做日期比较的校验,在js中把字符串转化为日期,一时之间还真不知道在js中怎么把一个字符串格式的日期转化为Date,查看了一些资料,在此分享下. 下面以调用js中Date(year,month,day)来生成一个日期对象.  1.把字符串格式转换为日期的函数,函数接受两个参数,dateStr字符串日期格式,  separator日期格式分隔符,默认是-.,这里没有对字符串的日期格式

spring mvc3中JACKSON序列化日期格式的问题 - 墙头草的Java - BlogJava

body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI",Tahoma,Helvetica,Sans-Serif,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLiU,serif; font-size: 10.5pt; line-height: 1.5;

Struts2中转换Date类型的问题

项目使用 strut2 ,spring,hibernate,提交表单时报错 java.lang.NoSuchMethodException: com.shop.jn.entity.Goods.setBuyDateTime([Ljava.lang.String;)] 异常详细信息: 11:23:30,113  WARN  - Error setting expression 'goods.buyDateTime' with value '[Ljava.lang.String;@109558d' o

Android中的时间日期格式如何定义

1.如何保证日期格式与系统设定的一致: Date date = new Date(location.getTime()); DateFormat dateFormat = android.text.format.DateFormat.getDateFormat(getApplicationContext()); mTimeText.setText("Time: " + dateFormat.format(date)); 注意此处应该应该用 android.text.format.Dat