【问题标题】:How to Convert Epoch to Javascript Date and Date to Epoch?如何将 Epoch 转换为 Javascript 日期和将日期转换为 Epoch?
【发布时间】:2015-12-08 06:47:41
【问题描述】:

我正在开发一款适用于多个时区的应用程序。

这里是服务器返回的纪元日期。

我需要一个可以将 Epoch Date 转换为 JavaScript Date 的函数。

我还需要将 JavaScript 日期 发送到 Epoch 日期 到服务器返回发布数据。

【问题讨论】:

  • 纪元日期是什么意思?为什么不向我们展示一些示例数据?
  • 我知道 UNIX 时间戳是什么……顺便说一句,您听说过 Google 吗? “JS date to epoch”,第一击就有你的答案……
  • 问题已在 stackoverflow 中。 stackoverflow.com/questions/5722919/…

标签: jquery


【解决方案1】:

@Parth Trivedi 我为你做了两个函数。

$(document).ready(function () {
    alert("Date to Epoch:" + Epoch(new Date()));
    alert("Epoch to Date:" + EpochToDate(Epoch(new Date())));
});

//Epoch
function Epoch(date) {
    return Math.round(new Date(date).getTime() / 1000.0);
}

//Epoch To Date
function EpochToDate(epoch) {
    if (epoch < 10000000000)
        epoch *= 1000; // convert to milliseconds (Epoch is usually expressed in seconds, but Javascript uses Milliseconds)
    var epoch = epoch + (new Date().getTimezoneOffset() * -1); //for timeZone        
    return new Date(epoch);
}
&lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"&gt;&lt;/script&gt;

【讨论】:

  • 我只修复了意图,但我还有另一个减少代码大小的建议:return new Date(epoch)。但这取决于您是否整合它。
【解决方案2】:
const epochToDateHuman = ({epochTime=0})=>{
const valueConvert = 60000 // Base convert to Minutes to milliseconds
const milliseconds = 1000 
const zone = (new Date().getTimezoneOffset() * -1 ) * valueConvert  //  Return subtract time zone 
const newEpoch = epochTime * milliseconds  // Convert new value in milliseconds

const dateConvert = new Date(newEpoch + zone) // New Date + Zone 
return dateConvert}



const epoch = 1619456956
epochToDateHuman({epoch})

此箭头函数 epochToDateHuman 接收您要转换为区域日期的名为 epochTime 的参数, const valueConvert 是以分钟为单位将获得的区域转换为毫秒的基础,因为 Date(). getTimezoneOffset () 以分钟为单位返回您的区域时差,当我们在 epochTime 中收到时,我们将它们转换为毫秒乘以常量毫秒,像这样我们获得 newEpoch 的新值(以毫秒为单位),区域以负毫秒为单位,将从 newEpoch 中减去传递给一个新的日期,我们获得日期区域的值...... 愉快的黑客攻击

泽拉索!

【讨论】:

  • 虽然这个代码块可能会回答这个问题,但最好能稍微解释一下为什么会这样。
猜你喜欢
  • 2012-04-01
  • 2014-06-10
  • 2011-10-09
  • 2017-03-23
  • 1970-01-01
  • 2015-08-19
  • 1970-01-01
  • 2017-09-01
  • 1970-01-01
相关资源
最近更新 更多