js怎么把unix毫秒数转化为具体的Date啊

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js怎么把unix毫秒数转化为具体的Date啊相关的知识,希望对你有一定的参考价值。

比如说这个数字1371466996.385926,它就是1970年1月1日到2013年某个时刻所经历的毫秒数。还有转化后的Date是不是格林威治时间,还需要转化成北京时间?

js 中把 unix 时间戳转换为 Date 很简单,可以有两种方式:


1、新建一个日期对象并把时间戳作为参数传进去就可以了:

var timestamp = 1371466996.385926;
var date = new Date(timestamp * 1000); // js 中是以毫秒为单位要乘以 1000

2、对于已经存在的日期对象,调用 setTime 方法设置时间戳:

var date = new Date();
var timestamp = 1371466996.385926;
date.setTime(timestamp * 1000); // js 中是以毫秒为单位要乘以 1000

对于格林威治时间和本地时间, js 提供了不同方法(toGMTString(), toUTCString(), toLocaleString())输出,在需要格式化为字符串的时候调用不同方法就可以了。

参考技术A function  formatDate(objD)   
    var str,colorhead,colorfoot;
    var yy = objD.getYear();
    if(yy<1900) yy = yy+1900;
    var MM = objD.getMonth()+1;
    if(MM<10) MM = '0' + MM;
    var dd = objD.getDate();
    if(dd<10) dd = '0' + dd;
    var hh = objD.getHours();
    if(hh<10) hh = '0' + hh;
    var mm = objD.getMinutes();
    if(mm<10) mm = '0' + mm;
    var ss = objD.getSeconds();
    if(ss<10) ss = '0' + ss;
    str =  yy + "-" + MM + "-" + dd + " " + hh + ":" + mm + ":" + ss;
    return(str);

formatDate(new Date());

参考技术B var timeStamp = 1371466996.385926;
var time = new Date(timeStamp * 1000);    // 得到当地时间

本回答被提问者采纳

怎么将long类型转换成date

参考技术A ong类型的时间转换为date,可以通过SimpleDateFormat对象对格式进行定义,然后创建一个Date类型的对象封装时间,再通过SimpleDateFormat对象的format(date)方法就可以获取指定的日期格式了。
有了上面的介绍,看看我是怎么封装一个简单的Long转换为Date的函数:

1
2
3
4
5
6
7
8
9
10
11

/**
* 把毫秒转化成日期
* @param dateFormat(日期格式,例如:MM/ dd/yyyy HH:mm:ss)
* @param millSec(毫秒数)
* @return
*/
private String transferLongToDate(String dateFormat,Long millSec)
SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
Date date= new Date(millSec);
return sdf.format(date);


3
写一个main函数测试一下我们写的方法:

1

import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;public class test public static void main(String[] args) throws ParseException // TODO Auto-generated method stub System.out.println(transferLongToDate("MM/dd/yyyy",System.currentTimeMillis())); /** * 把毫秒转化成日期 * @param dateFormat(日期格式,例如:MM/ dd/yyyy H本回答被提问者采纳

以上是关于js怎么把unix毫秒数转化为具体的Date啊的主要内容,如果未能解决你的问题,请参考以下文章

js字符串转化日期

js怎么把时间戳转换为日期格式

java如何把时间格式转为毫秒

js中 var time = new Date().getTime()得到的是毫秒数怎么转成秒!

怎么在java里获取带有毫秒的时间

怎么将long类型转换成date