2017-11-27
2162
#vanilla javascript
Christian Nwamba
1821
Nov 27, 2017 ⋅ 7 min read

Detect location and local time zone of users in JavaScript

Christian Nwamba JS preacher. Developer 🥑. Building the web with the community @concatenateConf @forLoopAfrica. JS and Senior Advocacy for the Next Billion Users through Microsoft.

Recent posts:

How To Iterate Over Enums In TypeScript

How to iterate over enums in TypeScript (with code examples)

Learn exactly how to iterate over numeric and string enums in TypeScript, with practical code snippets and type-safe patterns.

Matteo Di Pirro
Jun 2, 2025 ⋅ 9 min read
How To Import SVGs Into Your Next.js Apps

How to import SVGs into your Next.js apps: A 2025 guide

Learn the best 2025 methods to import SVGs in Next.js 14+, with tips on performance, styling, and App Router integration.

Joseph Mawa
Jun 2, 2025 ⋅ 9 min read
designing llm first products

Designing LLM-first products, not just features

Everyone’s building chat-first AI products. And most of them suck. Here’s how to break the mold and ship LLM-native software that actually solves problems.

Rosario De Chiara
May 30, 2025 ⋅ 4 min read
Build A React AI Image Generator With Hugging Face Diffusers

Build a React AI image generator with Hugging Face Diffusers

Build a React-based AI image generator app offline using the Hugging Face Diffusers library and Stable Diffusion XL.

Andrew Baisden
May 29, 2025 ⋅ 10 min read
View all posts

5 Replies to "Detect location and local time zone of users in JavaScript"

  1. thank you for the post! Just realised that you mixed up longitude and latitude in the reverseGeocodingWithGoogle function 😉

  2. Interesting post! I have one query related to DST. Is there any way in Javascript which will give us user’s tzid and tz long name based on tz database used in Joda library? These tzids are widely used universally and are defined by IANA database. Java’s Joda Library also use the same tz database.

    Joda library gives different DST data (not shown below) for same offset i.e. +04:00…like as below:

    (+04:00) Europe/Ulyanovsk, Greenwich Mean Time
    (+04:00) Europe/Volgograd, Moscow Standard Time
    (+04:00) Indian/Mahe, Seychelles Time
    (+04:00) Indian/Mauritius, Mauritius Time
    (+04:00) Indian/Reunion, Reunion Time

    we have to apply those DST rules while sending icalendar file (ICS files) to users. Users are located at different regions.

    if user’s timezone detected by JS is “+04:00 with some country”, then how can we decide which DST rule out of several should be applied? Because I dont have any country to region mapping.

Leave a Reply