js将时间戳转化成时间格式字符串(兼容各种浏览器)

起初为了简便起见,使用了toLocaleString()这个方法,结果问题就出现了。

<script type="text/javascript">
    new Date(parseInt(1421683200) * 1000).toLocaleString();
    //IE浏览器下结果为:2015年1月20日 0:00:00
    //Google浏览器下结果为:2015/1/20 上午12:00:00
    //Firefox浏览器下结果为:2015/1/20 上午12:00:00
    //Safari浏览器下的结果为: Tuesday,January 20, 2015 00:00:00
</script>

各家浏览器得出的结果不一样有木有?那么怎么才能使得各家浏览器的结果是一样的的呢?其实很简单,就是先获得时间Date,然后再分别获得年月日,如果必要的话还可以获得时分秒等其他所需数据,然后根据自己所需要的时间格式,利用上面得到的数据自己拼接一个时间字符串即可,这样各家浏览器显示的都是你自己定义的字符串,当然就不会出现显示效果不统一的情况了。

<script type="text/javascript">
    var test = new Date(parseInt(1421683200) * 1000);
    var $_year = test.getFullYear();
    var $_month = parseInt(test.getMonth())+1;
    var $_day = test.getDate();
    var $_f_date =  $_year +"-"+$_month+"-"+$_day
    alert($_f_date);//2015-1-20
    var $_f_date2 =  $_year +"年"+$_month+"月"+$_day+"日";
    alert($_f_date2);//2015年1月20日
</script>

原文地址:http://www.iyuze.cn/article/574.html

时间: 2024-10-24 08:04:57

js将时间戳转化成时间格式字符串(兼容各种浏览器)的相关文章

php时间戳转化成时间相差8小时问题

php时间戳 转化成时间的时候 $mytime=time(); echo $mytime.'<br />'; echo date('Y-m-d H:i:s',$mytime); 会产生8个小时的时间差: 解决办法: 1.最简单的方法就是不要用php5.1以上的版本(行不通) 2.修改php.ini.打开php.ini查找date.timezone 去掉前面的分号= 后面加Asia/Shanghai,重启apache服务器即可--缺点就是如果程序 放到别人的服务器上,不能修改php.ini,那就

JS将时间戳转化为时间

//将时间戳转化为时间 function timestampToTime(timestamp) { var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000 Y = date.getFullYear() + "-"; M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-'; D = date.

js 时间戳转换成时间格式,可自定义格式

由于 c# 通过ajax获取的时间 传到前台 格式为:/Date(1354116249000)/ 所以需要转换一下,想要什么格式 更改 format() 里的 返回语句 就可以了 formatDate()方法传入的参数是时间戳,可以用replace()得到时间戳:replace("/Date(", "").replace(")/", ""),然后传入方法,就可以得到时间格式了 function formatDate(obj)

JS 时间戳转化为时间格式

function getLocalTime(nS) { return new Date(parseInt(nS)).toLocaleString().replace(/:\d{1,2}$/, ' ').replace("年", '-').replace("月", '-').replace("日", '').substring(0, 10); } 转化出来的时间格式为  yyyy-MM-dd

js将时间戳转换成日期格式

// 简单的一句代码 var date = new Date(时间戳); //获取一个时间对象  注意:如果是uinx时间戳记得乘于1000.比如php函数time()获得的时间戳就要乘于1000 /*----------下面是获取时间日期的方法,需要什么样的格式自己拼接起来就好了----------*/ date.getFullYear();//获取完整的年份(4位,1970) date.getMonth();//获取月份(0-11,0代表1月,用的时候记得加上1) date.getDate(

js时间戳转化成日期格式

function timestampToTime(timestamp) { var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000 var Y = date.getFullYear() + '-'; var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-'; var D = (date.getDate

通过js将时间戳转换成&quot;yyyy--mm--dd&quot;格式

在数据库里存的日期是date格式 java后台封装的类是的属性字段是date类型 前台通过ajax从后台获取数据,以json格式传到前端,时间变成了时间戳的格式 解决方法是: function fmtDate(obj){    var date =  new Date(obj);    var y = 1900+date.getYear();    var m = "0"+(date.getMonth()+1);    var d = "0"+date.getDat

js 将php生成的time()类型时间戳转化成具体date格式的日期

需求: 将首页显示的int类型的时间转化为date类型的时间格式: QuestionModel获取到question列表数据时,包括question['pub_time'],在显示时,需要将其转化为具体的时间格式进行显示. 插入问题记录时,pub_time字段是使用php的time()函数,获取到当前的时间戳整数,然后插入到mysql数据表中的,所以其格式是int类型. 但在view视图的html中显示时,需要将其格式化成时间格式进行显示.但又因为每一条问题为了便于分页显示数据都是通过js拼接的

iOS开发之---将时间戳,转化成时间字符串。

1.将一个NSDate,转化成时间字符串. NSDate *date = [NSDate date]; NSDateFormatter *fmt = [[NSDateFormatter alloc] init]; fmt.dateFormat = @"yyyy-MM-dd"; NSString *dateStr = [fmt stringFromDate:date];