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:

SOLID Series: Liskov Substitution Principle (LSP)

A deep dive into the Liskov Substitution Principle with examples, violations, and practical tips for writing scalable, bug-free object-oriented code.

Oyinkansola Awosan
Jun 6, 2025 ⋅ 10 min read
Modern CSS Carousels: No JavaScript Required

Modern CSS carousels: No JavaScript required

This article walks through new CSS features like ::scroll-button() and ::scroll-marker() that make it possible to build fully functional CSS-only carousels.

Saleh Mubashar
Jun 6, 2025 ⋅ 5 min read
hidden coast of developer elitism

It’s time to break the cycle of developer elitism

Let’s talk about one of the greatest problems in software development: nascent developers bouncing off grouchy superiors into the arms of AI.

Lewis Cianci
Jun 4, 2025 ⋅ 9 min read
When To Use Flexbox And When To Use CSS Grid

When to use Flexbox and when to use CSS Grid

Flexbox and Grid are the heart of modern CSS layouts. Learn when to use each and how they help build flexible, responsive web designs — no more hacks or guesswork.

Leonardo Maldonado
Jun 3, 2025 ⋅ 9 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