Using moment.js

const moment = require('moment-timezone');

Calculating duration in seconds from current time to a future time. e.g. the next day

const nextDayDateString = moment().tz('America/Los_Angeles').add(1, "days").format("YYYY-MM-DD 00:00:00");
const nextDayDate = moment(nextDayDateString).tz('America/Los_Angeles');
const nextDayExpireSeconds = Math.round(moment.duration(nextDayDate.diff(moment())).asSeconds());

Calculating unix timestamp of certain date in local time

const nextDayDt = moment().tz('America/Los_Angeles').add(1, "days").format("YYYY-MM-DD 00:00:00");
const nextDayDtUnix = moment(nextDayDt).tz('America/Los_Angeles').utc().unix();

Determining date string by the number of days back using local time

// Will display date string 30 days back
const daysBack = 30;
var dateFrom = moment.tz(moment().subtract(daysBack,'days').format('YYYY-MM-DD 00:00:00'), 'America/Los_Angeles').tz('GMT').format('YYYY-MM-DD HH:mm:SS');

Convert unix timestamp to local date string

moment.unix(1505518101).tz('America/Los_Angeles').format("YYYY-MM-DD HH:mm:ss")

2017-09-15 16:28:21

Generate current date string in local time

moment.tz('America/Los_Angeles').format("YYYY-MM-DD HH:mm:ss");

Generate ISO 8601 date in current local time:

moment().tz('America/Los_Angeles').format() // e.g. 2019-03-29T16:55:55-07:00. The default format

moment()..tz('America/Los_Angeles').toISOString() // This does not set iso string as local time. Will be set to utc time.

https://stackoverflow.com/questions/25725019/how-do-i-format-a-date-as-iso-8601-in-moment-js


Comments

Popular posts from this blog

Copy partitioned table schema to another table

Changing BigQuery table field names