Si configuro la zona horaria del momento predeterminado con moment.tz.setDefault() , ¿hay alguna forma de recuperar más tarde la zona horaria predeterminada actual?
Ejemplo:
const moment = require('moment-timezone'); moment.tz.setDefault('Asia/Tokyo'); console.log(moment.tz.getDefault()); // TypeError: moment.tz.getDefault is not a function console.log(moment.tz.default); // undefined console.log(moment.tz.guess()); // America/New_York (my local timezone) console.log(moment.tz.guess(true)); // America/New_York // => I want something that will return "Asia/Tokyo" Esto es diferente del duplicado sugerido porque no quiero la zona horaria del navegador , específicamente quiero saber en qué (si es que hay algo) se configuró moment.tz.setDefault() .
Puede lograrlo con moment.defaultZone.name :
const moment = require('moment-timezone'); moment.tz.setDefault('Asia/Tokyo'); console.log(moment.defaultZone.name)Producción:
Asia/TokyoActualización después del comentario de @Kip
moment.defaultZone no está definido, así que use moment.defaultZone?.name para estar seguro.moment().format('ZZ') que devuelve "+0900" en la hora de Tokio.