文档章节

js时间戳转时间

r
 rshengwudi
发布于 2017/08/11 15:17
字数 558
阅读 3
收藏 0

/** 

 * @param {string} format 格式 

 * @param {int} timestamp 要格式化的时间 默认为当前时间 

 * @return {string}   格式化的时间字符串 

 */

function date(format, timestamp){ 

 var a, jsdate=((timestamp) ? new Date(timestamp*1000) : new Date()); 

 var pad = function(n, c){ 

  if((n = n + "").length < c){ 

   return new Array(++c - n.length).join("0") + n; 

  } else

   return n; 

  } 

 }; 

 var txt_weekdays = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; 

 var txt_ordin = {1:"st", 2:"nd", 3:"rd", 21:"st", 22:"nd", 23:"rd", 31:"st"}; 

 var txt_months = ["", "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; 

 var f = { 

  // Day 

  d: function(){return pad(f.j(), 2)}, 

  D: function(){return f.l().substr(0,3)}, 

  j: function(){return jsdate.getDate()}, 

  l: function(){return txt_weekdays[f.w()]}, 

  N: function(){return f.w() + 1}, 

  S: function(){return txt_ordin[f.j()] ? txt_ordin[f.j()] : 'th'}, 

  w: function(){return jsdate.getDay()}, 

  z: function(){return (jsdate - new Date(jsdate.getFullYear() + "/1/1")) / 864e5 >> 0}, 

   

  // Week 

  W: function(){ 

   var a = f.z(), b = 364 + f.L() - a; 

   var nd2, nd = (new Date(jsdate.getFullYear() + "/1/1").getDay() || 7) - 1; 

   if(b <= 2 && ((jsdate.getDay() || 7) - 1) <= 2 - b){ 

    return 1; 

   } else

    if(a <= 2 && nd >= 4 && a >= (6 - nd)){ 

     nd2 = new Date(jsdate.getFullYear() - 1 + "/12/31"); 

     return date("W", Math.round(nd2.getTime()/1000)); 

    } else

     return (1 + (nd <= 3 ? ((a + nd) / 7) : (a - (7 - nd)) / 7) >> 0); 

    } 

   } 

  }, 

   

  // Month 

  F: function(){return txt_months[f.n()]}, 

  m: function(){return pad(f.n(), 2)}, 

  M: function(){return f.F().substr(0,3)}, 

  n: function(){return jsdate.getMonth() + 1}, 

  t: function(){ 

   var n; 

   if( (n = jsdate.getMonth() + 1) == 2 ){ 

    return 28 + f.L(); 

   } else

    if( n & 1 && n < 8 || !(n & 1) && n > 7 ){ 

     return 31; 

    } else

     return 30; 

    } 

   } 

  }, 

   

  // Year 

  L: function(){var y = f.Y();return (!(y & 3) && (y % 1e2 || !(y % 4e2))) ? 1 : 0}, 

  //o not supported yet 

  Y: function(){return jsdate.getFullYear()}, 

  y: function(){return (jsdate.getFullYear() + "").slice(2)}, 

   

  // Time 

  a: function(){return jsdate.getHours() > 11 ? "pm" : "am"}, 

  A: function(){return f.a().toUpperCase()}, 

  B: function(){ 

   // peter paul koch: 

   var off = (jsdate.getTimezoneOffset() + 60)*60; 

   var theSeconds = (jsdate.getHours() * 3600) + (jsdate.getMinutes() * 60) + jsdate.getSeconds() + off; 

   var beat = Math.floor(theSeconds/86.4); 

   if (beat > 1000) beat -= 1000; 

   if (beat < 0) beat += 1000; 

   if ((String(beat)).length == 1) beat = "00"+beat; 

   if ((String(beat)).length == 2) beat = "0"+beat; 

   return beat; 

  }, 

  g: function(){return jsdate.getHours() % 12 || 12}, 

  G: function(){return jsdate.getHours()}, 

  h: function(){return pad(f.g(), 2)}, 

  H: function(){return pad(jsdate.getHours(), 2)}, 

  i: function(){return pad(jsdate.getMinutes(), 2)}, 

  s: function(){return pad(jsdate.getSeconds(), 2)}, 

  //u not supported yet 

   

  // Timezone 

  //e not supported yet 

  //I not supported yet 

  O: function(){ 

   var t = pad(Math.abs(jsdate.getTimezoneOffset()/60*100), 4); 

   if (jsdate.getTimezoneOffset() > 0) t = "-" + t; else t = "+" + t; 

   return t; 

  }, 

  P: function(){var O = f.O();return (O.substr(0, 3) + ":" + O.substr(3, 2))}, 

  //T not supported yet 

  //Z not supported yet 

   

  // Full Date/Time 

  c: function(){return f.Y() + "-" + f.m() + "-" + f.d() + "T" + f.h() + ":" + f.i() + ":" + f.s() + f.P()}, 

  //r not supported yet 

  U: function(){return Math.round(jsdate.getTime()/1000)} 

 }; 

   

 return format.replace(/[\]?([a-zA-Z])/g, function(t, s){ 

  if( t!=s ){ 

   // escaped 

   ret = s; 

  } else if( f[s] ){ 

   // a date function exists 

   ret = f[s](); 

  } else

   // nothing special 

   ret = s; 

  } 

  return ret; 

 }); 

}

使用方式

date('Y-m-d','1350052653');//很方便的将时间戳转换成了2012-10-11 

date('Y-m-d H:i:s','1350052653');//得到的结果是2012-10-12 22:37:33

本文转载自:http://www.jb51.net/article/77066.htm

r
粉丝 4
博文 6
码字总数 851
作品 0
宁波
私信 提问
js中获取时间new date()的用法

js中获取时间new date()的用法 获取时间: 获取特定格式的时间: 1 myDate.getYear(); //获取当前年份(2位) 2 myDate.getFullYear(); //获取完整的年份(4位,1970-????) 3 myDate.getMonth()...

梦想代码
2018/07/19
0
0
js日期格式化,小时不正确

用js格式化一个时间戳,是由php函数time()得到的,存在数据库中,用ajax返回得到。 用js格式化这个时间戳的时候,小时不正确。其他的都对。 用php的结果:20131003 11:35:39 用js的结果: 20...

qii
2013/10/03
1K
2
2016/11/22工作小结

1.如初商城js方法基本上写完了。然后研究了一下倒计时的算法。倒计时目前精确到天/时/分/秒。 记两个js方法 ①new Date获取当前时间 new Date()括号中可以写时间戳和其他格式的时间。 ②dat...

并不是
2016/11/22
1
1
Flask 教程 第十二章:日期和时间

本文转载自:https://www.jianshu.com/p/0c6b05ce1c5c 这是Flask Mega-Tutorial系列的第十二部分,我将告诉你如何以适配所有用户的方式处理日期和时间,无论他们身处地球上的何处。 显示日期...

天降攻城狮
02/22
0
0
JavaScript学习记录day9-标准对象

JavaScript学习记录day9-标准对象 [TOC] 在JavaScript的世界里,一切都是对象。 但是某些对象还是和其他对象不太一样。为了区分对象的类型,我们用操作符获取对象的类型,它总是返回一个字符...

ygqygq2
2018/06/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

PhotoShop 色调:理解直方图/RGB通道信息

一、直方图:图表的形式,展示图像像素分布的情况 1.平均值:表示平均亮度 2.标准偏差值:表示亮度值范围内的中间值 3.像素: 表示用于计算直方图的像素总数 4.色阶:显示指针下面的区域亮度...

东方墨天
11分钟前
4
0
wildfly(JBoss AS)应用服务器快速入门

什么是wildfly JBoss AS 从8版本起名为wildfly。Wildfly是一个开源的基于JavaEE的轻量级应用服务器。可以在任何商业应用中免费使用。 WildFly是一个灵活的、轻量的、强大管理能力的应用程序服...

程序新视界
36分钟前
2
0
Java集合类常见面试知识点总结

Java集合类学习总结 这篇总结是基于之前博客内容的一个整理和回顾。 这里先简单地总结一下,更多详细内容请参考我的专栏:深入浅出Java核心技术 https://blog.csdn.net/column/details/21930...

Java技术江湖
39分钟前
6
0
怎么用for循环打出爱心

先上效果图: 这是用*组成的爱心,下面讲讲思路: 首先这个图形可以拆分成三部分:第一部分是上面三行的两个梯形,第二部分是中间三行的长方形,第三部分是最下面的倒三角形。 其实图形拆分好...

INEVITABLE
45分钟前
4
0
用HttpUrlConnection伪造成HttpClient

https://www.jianshu.com/p/27ad06cc39d2

shzwork
50分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部