Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Преобразовать дату в unixtime (https://javascript.ru/forum/dom-window/79529-preobrazovat-datu-v-unixtime.html)

AUTHOR234 19.02.2020 13:42

Преобразовать дату в unixtime Zabbix javascript
 
Здравствуйте.
прошу помощи. в javascript совсем нуб
есть код (не мой, но мне подошел).

var dateFormatArr = [];
var dateOutput = '';
value.split('-').forEach(function(octet) {

if(octet.length === 1){
octet = '0' + octet;
}
dateFormatArr.push(octet)
});
dateOutput = dateFormatArr.join('-').toUpperCase();
return dateOutput

скрипт берет дату типа 2020-2-2 и превращает в 2020-02-02.

но как оказалось для решения задачи этого мало.
как полученное значение преобразовать в unixtime?

рони 19.02.2020 14:18

AUTHOR234,
<script>
function getUnixtime(date)
           {
              date = new Date(Date.parse(date));
              date.setHours(0,0,0,0);
              return (date/1000|0) - date.getTimezoneOffset() * 60;
           }
document.write(getUnixtime("2020-2-2"))
  </script>

AUTHOR234 20.02.2020 02:18

Спасибо.
Но вчера дошел до такого решения.

value = value.replace(',', 'T');
value = value + 'Z';
var x = Date.parse(value)/1000;
return x

Вроде работает. Оставлю ключевое слово Zabbix javascript, что бы нашел другой такой же как я.
Ваш вариант тоже работает

date = new Date(Date.parse(value));
date.setHours(0,0,0,0);
return (date/1000|0) - date.getTimezoneOffset() * 60;


Часовой пояс GMT +3, время: 12:53.