js对时间戳转换的方法

因为前端和后端交互的时候基本都会涉及到对数据库时间戳的转换,之前是碰到一次自己写一次方法,一直没有总结一下么,现在来总结一下方便以后不时之需:

function time(ns) {
                var d = new Date(ns*1000);
                var month = (d.getMonth()+ 1).toString().length == 1 ? '0'+(d.getMonth()+1) : d.getMonth() + 1;
                var date = d.getDate().toString().length == 1 ? '0'+d.getDate() : d.getDate();
                var hours = d.getHours().toString().length == 1 ? '0'+d.getHours() : d.getHours();
                var minutes = d.getMinutes().toString().length == 1 ? '0'+d.getMinutes() : d.getMinutes();
                var seconds = d.getSeconds().toString().length == 1 ? '0'+d.getSeconds() : d.getSeconds();
                var dformat = [ d.getFullYear(), month, date].join('-')
                    + ' ' + [ hours, minutes, seconds ].join(':');
                return dformat;
            }

以上是对php10位时间戳的处理,所以在方法内传参的ns乘以1000先转化为13位的时间戳,如果使用的java语言,应该是13位的时间戳,就不用乘以1000了。
可以看到,以上用了很多三段式去判断处理,主要是单位数加0用的,格式比较工整。
有更好的发法,也希望大家指点一二。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容