Ответ 1
Вы можете попробовать вот так:
function toDateTime(secs) {
var t = new Date(1970, 0, 1); // Epoch
t.setSeconds(secs);
return t;
}
Информация о дате эпохи.
Как преобразовать секунды в объект datetime в javascript.
Примеры:
+1,3308313703571
+1,6324722385401
Это из серии точек и когда они произошли. Я понимаю 1.23323 больше секунд, но я не могу изменить значение, вытаскивая из api.
Вы можете попробовать вот так:
function toDateTime(secs) {
var t = new Date(1970, 0, 1); // Epoch
t.setSeconds(secs);
return t;
}
Информация о дате эпохи.
ваши значения в примере имеют десятичное значение. похоже, что вы пытаетесь преобразовать 1.something seconds в дату.
В то же время проверьте этот пример здесь в правильном преобразовании секунд до даты. Вы можете просмотреть их источники js.
Вопрос, кажется, уже был дан ответ, но это может быть полезно для тех, кто пытается сделать что-то похожее на метод ruby Time.at().
function formatDateTime(input){
var epoch = new Date(0);
epoch.setSeconds(parseInt(input));
var date = epoch.toISOString();
date = date.replace('T', ' ');
return date.split('.')[0].split(' ')[0] + ' ' + epoch.toLocaleTimeString().split(' ')[0];
};
Вы можете передать unix timestamp миллисекунды в качестве аргумента конструктору Date:
var secs = 30;
new Date(secs * 1000);
Выходы:
Date 1970-01-01T00:00:30.000Z
/**
DateTime
-------
Author: Jamal BOUIZEM
Date: 20/02/2015
Version: 1.0.0
*/
var DateTime = (function(){
return {
instance: function(spec){
var that = {
h: spec.h || 0,
m: spec.m || 0,
s: spec.s || 0
};
var d = new Date();
var str = "";
function __init__(h, m, s)
{
that.h = h;
that.m = m;
that.s = s;
d.setHours(that.h);
d.setMinutes(that.m);
d.setSeconds(that.s);
};
that.get = function(){
d.setHours(that.h);
d.setMinutes(that.m);
d.setSeconds(that.s);
return d;
};
that.set = function(h, m, s){
__init__(h, m, s);
};
that.convertSecs = function(){
return (that.h * 3600) + (that.m * 60) + that.s;
};
that.secsToDate = function(seconds){
var ts = seconds % 60;
var tm = (seconds / 60) % 60;
var th = (seconds / 3600) % 60;
return DateTime.instance({ h: parseInt(th), m: parseInt(tm), s: parseInt(ts) });
};
that.add = function(d){
return that.secsToDate(that.convertSecs() + d.convertSecs());
};
that.subtract = function(d){
return that.secsToDate(that.convertSecs() - d.convertSecs());
};
__init__(that.h, that.m, that.s);
return that;
}
}
})();