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

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。