Подтвердить что ты не робот

Javascript конвертирует секунды в объект даты

Как преобразовать секунды в объект datetime в javascript.

Примеры:

+1,3308313703571

+1,6324722385401

Это из серии точек и когда они произошли. Я понимаю 1.23323 больше секунд, но я не могу изменить значение, вытаскивая из api.

4b9b3361

Ответ 1

Вы можете попробовать вот так:

function toDateTime(secs) {
    var t = new Date(1970, 0, 1); // Epoch
    t.setSeconds(secs);
    return t;
}

Информация о дате эпохи.

Ответ 2

ваши значения в примере имеют десятичное значение. похоже, что вы пытаетесь преобразовать 1.something seconds в дату.

В то же время проверьте этот пример здесь в правильном преобразовании секунд до даты. Вы можете просмотреть их источники js.

Ответ 3

Вопрос, кажется, уже был дан ответ, но это может быть полезно для тех, кто пытается сделать что-то похожее на метод 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];
};

Ответ 4

Вы можете передать unix timestamp миллисекунды в качестве аргумента конструктору Date:

var secs = 30;
new Date(secs * 1000);

Выходы:

Date 1970-01-01T00:00:30.000Z

Ответ 5

/**
    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;
        }
    }
})();