如何将Epoch转换为Javascript日期和日期到Epoch?

时间:2015-12-08 06:47:41

标签: jquery

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

此处服务器返回的纪元日期。

我需要一个可以将大纪元日期转换为 JavaScript日期的函数。

此外,我还要求将 JavaScript日期发送到大纪元日期,以便在发布数据上发回服务器。

2 个答案:

答案 0 :(得分:7)

@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);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>

答案 1 :(得分:0)

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 中减去传递给一个新的日期,我们获得该日期区域的值... 快乐黑客

泽拉索!