I want to subtract 1 day from the time now in a different timezone. The moment.js docs say to use referenceTime as the time to subtract one day from. The code below prints the current time in Los Angeles (first) and then the the time 1 day ago from today in the timezone I am currently in (second), I want it to print the time 1 day ago from the timezone in Los Angeles.
require moment = require('moment'),
moment_tz = require('moment-timezone');
var referenceTime = moment_tz().tz("America/Los_Angeles").format();
console.log(referenceTime);
var referenceTimeMinusOne = moment().subtract(1,'days').calendar(referenceTime);
console.log(referenceTimeMinusOne);
I want to subtract 1 day from the time now in a different timezone. The moment.js docs say to use referenceTime as the time to subtract one day from. The code below prints the current time in Los Angeles (first) and then the the time 1 day ago from today in the timezone I am currently in (second), I want it to print the time 1 day ago from the timezone in Los Angeles.
require moment = require('moment'),
moment_tz = require('moment-timezone');
var referenceTime = moment_tz().tz("America/Los_Angeles").format();
console.log(referenceTime);
var referenceTimeMinusOne = moment().subtract(1,'days').calendar(referenceTime);
console.log(referenceTimeMinusOne);
Share
Improve this question
asked Nov 21, 2014 at 0:24
jacob30jacob30
1511 gold badge3 silver badges11 bronze badges
1 Answer
Reset to default 2It doesn't matter, it operates on UTC and converts afterwards.
moment = require('moment-timezone');
var la = moment().tz("America/Los_Angeles")
var nl = moment().tz("Europe/Amsterdam")
console.log('now:')
console.log(la.format());
console.log(nl.format());
var earlier_la = la.subtract(1,'days')
var earlier_nl = nl.subtract(1,'days')
console.log('\nearlier:')
console.log(earlier_la.format());
console.log(earlier_nl.format());
// Earlier Dutch time converted back to Los Angelos equals
// Earlier Los Angelos time
console.log(earlier_nl.tz('America/Los_Angeles').format());