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:

8 Reasons Your Next.js App Is Slow — And How To Fix Them

8 reasons your Next.js app is slow — and how to fix them

You don’t need to guess what’s wrong with your Next.js app. I’ve mapped out the 8 biggest performance traps and the fixes that actually work.

Chizaram Ken
Jun 20, 2025 ⋅ 16 min read
how to truncate text in CSS (single and multi-line)

How to truncate text in CSS (single and multi-line)

Learn how to truncate text with three dots in CSS, and use two reliable CSS text truncation techniques while covering single-line and multi-line truncations.

Chinedu Okere
Jun 20, 2025 ⋅ 10 min read
how to use the Interest Invoker API for better, more accessible UX

How to use the Interest Invoker API for better, more accessible UX

Explore how to use Google’s new experimental Interest Invoker API for delays, popovers, and smarter hover UX.

Emmanuel John
Jun 19, 2025 ⋅ 7 min read
How To Build And Deploy A Web App With Bolt.new

How to build and deploy a web app with Bolt

Bolt.new revolutionizes how you build and deploy web apps with no-code development and seamless AI integration.

Isaac Okoro
Jun 19, 2025 ⋅ 8 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