如何将Oracle Date对象/ Long转换为javascript日期?

时间:2013-05-21 16:19:07

标签: javascript database oracle

我正在查询从Oracle数据库返回日期的Web服务,如下所示:        /Date(1369519200000)/ 但是我没有丝毫知道这个Long的值代表什么,所以我不知道如何将它转换为javascript日期对象。

请帮忙

2 个答案:

答案 0 :(得分:3)

它看起来像一个以毫秒为单位的纪元数据:

var ms = 1369519200000;
var d = new Date(0);
d.setMilliseconds(ms);

d现在是“2013年5月25日星期五22:00:00 GMT”(通过d.toUTCString()),希望能听到您的期望。

这不考虑时区;如果你知道日期是UTC,你可以改为使用setUTCMilliseconds,或者只使用:

var d = new Date(ms);

但您可能需要准确了解网络服务向您发送的内容,以便您知道正确地解释日期 - 例如,您是否需要应用时区或夏令时调整。

不知道它的一般可靠性,但this article包含有关数据处理的一些信息,包括纪元日期的含义。

答案 1 :(得分:0)

看起来它是自UNIX 纪元(1970年午夜)以来的毫秒数。

如果您可以将该值作为整数获得,则可以执行以下操作:

var dbDate = new Date(0);  // start out at  time 0, i.e. the unix epoch
dbDate.setUTCSeconds(millisSinceEpoch/1000);