在ruby中,如何将Fixnum1291132740128(从纪元开始的毫秒数)转换为等效的HTML5 global time & date string(另请参见HTML5 time element explanation)。例如,1979-10-14T12:00:00.001-04:00)?
我的第一次尝试是:

> Time.at(1291132740128/1000.0).strftime("%Y-%m-%dT%H:%M:%S-%Z")
=> "2010-11-30T10:59:00-EST"

但是,(1)我怎么得到毫秒?时间存储毫秒吗?
还有,(2)我怎样才能将时区设置为-0400或-0500,这取决于是夏时制时间?
编辑:现在我想起来了,也许最好保持1291132740128,并根据浏览器的位置使用javascript进行转换。你怎么认为?

最佳答案

1)%3N中的strftime将为您提供毫秒:

Time.at(1291132740128/1000.0).strftime("%Y-%m-%dT%H:%M:%S.%3N-%Z")
=> "2010-11-30T16:59:00.128-CET"

2)这不是自动的吗?
编辑:在这种情况下,如果用户关闭了js,会发生什么?我认为这取决于用法。

07-24 20:08