const timezone = moment.tz.names(); const timezoneList = []; timezone.forEach((element) => { timezoneList.push({ label: element, value: element }); });Por el momento solo estoy obteniendo la lista, pero también estoy tratando de obtener la hora local de cada país.
Muchísimas gracias
Sugeriría echar un vistazo a los países y las zonas horarias , tiene una lista muy conveniente de países junto con sus zonas horarias.
Una vez que tenemos la lista de zonas horarias de un país, podemos obtener la(s) hora(s) local(es), usando Date.toLocaleTimeString() , lo que nos permite registrar las horas locales para cada país.
He hecho esto para los primeros 20 países a continuación:
let countries = Object.values(ct.getAllCountries()).sort(({ name: a}, { name: b}) => a.localeCompare(b)).slice(0,20); console.log('Country'.padEnd(20), 'Local Time(s):') for(let country of countries) { console.log(country.name.padEnd(20), getLocaleTimes(country.timezones).join(", ")) } function getLocaleTimes(timeZones) { return [...new Set(timeZones.map(getLocalTime))]; } function getLocalTime(timeZone) { return new Date().toLocaleTimeString([], { timeZone, }); } .as-console-wrapper { max-height: 100% !important; top: 0; } <script src="https://cdn.jsdelivr.net/gh/manuelmhtr/countries-and-timezones@latest/dist/index.min.js" type="text/javascript"></script>