在javascript中php时间戳转换成时间,可以使用toLocaleString方法将时间戳转换为时间,语法格式为“timestamp data.toLocaleString()”。 toLocaleString方法根据当地时间将Date对象转换为字符串并返回结果。
本教程的运行环境:windows7系统,javascript1.8.5版本,戴尔G3笔记本。
js 时间戳转日期格式
什么是Unix时间戳(Unix时间戳):Unix时间戳(Unix时间戳),或者Unix时间(Unix时间),POSIX时间(POSIX时间),是一种时间表示方法,定义为从1970年格林威治标准时间开始的总秒数1 月 1 日 00:00:00 至今。 除了用于 Unix 系统和类 Unix 系统之外,Unix 时间戳还广泛用于许多其他操作系统。
目前,相当多的操作系统使用32位二进制数来表示时间。 此类系统的 Unix 时间戳可使用至 2038 年 1 月 19 日 03:14:07 GMT(二进制:01111111 11111111 11111111 11111111)。 1秒后,二进制数将变成10000000 00000000 00000000 00000000,出现溢出错误php时间戳转换成时间,导致系统将时间误认为是1901年12月13日20:45:52。这很可能会导致软件故障,甚至系统崩溃麻痹。 使用64位二进制数来表示时间(最多292,277,026,596 December 04 15:30:08 GMT)的系统几乎不会遇到这种溢出问题。
js 将时间戳转换为普通日期格式
1.Date toLocaleString方法
function getLocalTime(nS) { return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:d{1,2}$/,' '); }
登录复制
parseInt() 函数解析字符串并返回一个整数。
js中操作的时间单位是微秒。
toLocaleString()方法根据本地时间将Date对象转换为字符串并返回结果。
Replace()方法用于将字符串中的某些字符替换为其他字符,或者替换与正则表达式匹配的子字符串。
Replace(/:d{1,2}$/,' ') 验证替换为:开头有一位或两位数字的结束字符串,即第二个; 替换为空
显示如下:
所以我们可以借助正则表达式来改变我们想要的日期格式。
扩展信息:
js将时间转换为时间戳
1.js如何获取当前时间戳
var timestamp1 = Date.parse(new Date());
登录复制
var timestamp2 = (new Date()).valueOf();
登录复制
var timestamp3 = new Date().getTime();
登录复制
第一种:将获取到的时间戳改为微秒为000显示,第二种、第三种是获取当前微秒时间戳。
2、js获取时间戳的方式
var oldTime = (new Date("2015/06/23 08:00:20")).getTime()/1000;
登录复制
getTime() 返回值的单位是微秒。
封装的时间格式化程序
/** * 时间戳格式化函数 * @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 > 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 = 4 && a >= (6 - nd)){ nd2 = new Date(jsdate.getFullYear() - 1 + "/12/31"); return date("W", Math.round(nd2.getTime()/1000)); } else{ return (1 + (nd > 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 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) 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
登录复制
【推荐学习:javascript进阶教程】
发表评论