Pregnancy Due Date Estimator - Online LMP & Cycle Length Tool
Estimate due date from last menstrual period or conception date. Uses Naegele's rule and shows week-by-week milestones. Local calculator for informational use.
UD5 Toolkit
Visualize Intl.DateTimeFormat output across locales, time zones, and format options. Inspect formatToParts() breakdown and compare multiple locales side-by-side.
// Loading...
Intl.DateTimeFormat is a built-in JavaScript API that provides language-sensitive date and time formatting. It's part of the ECMAScript Internationalization API (ECMA-402) and is supported in all modern browsers and Node.js. It allows developers to format dates according to different locales without external libraries.
dateStyle / timeStyle are preset shortcuts introduced in ECMA-402 2019. They let you request "full", "long", "medium", or "short" formats without specifying individual components. Custom options (weekday, year, month, day, hour, minute, second, etc.) give you granular control over each part of the output. Note: you cannot mix dateStyle/timeStyle with individual component options β it's one or the other.
The timeZone option specifies which IANA time zone to use for formatting. The same UTC timestamp will display differently depending on the time zone. For example, 2024-01-15T20:00:00Z shows as "3:00 PM" in America/New_York but "5:00 AM" in Asia/Tokyo (next day). If no time zone is specified, the browser's local time zone is used.
formatToParts() returns an array of objects representing each part of the formatted string. Each object has a type (like "weekday", "month", "day", "year", "literal", etc.) and a value. This is extremely useful for custom rendering, such as colorizing specific parts, extracting components, or building custom date picker displays.
Modern browsers support hundreds of locales. Common ones include en-US (American English), en-GB (British English), zh-CN (Simplified Chinese), ja-JP (Japanese), de-DE (German), fr-FR (French), es-ES (Spanish), pt-BR (Brazilian Portuguese), ko-KR (Korean), and ar-SA (Arabic). Use Intl.DateTimeFormat.supportedLocalesOf() to check if a specific locale is available.
The calendar option supports various calendar systems: gregory (Gregorian, the default), chinese (Chinese lunar calendar), islamic (Islamic/Hijri), japanese (Japanese imperial), persian (Persian/Solar Hijri), buddhist (Buddhist), hebrew (Hebrew), and indian (Indian national). Note that not all calendars are supported for every locale.
For many use cases, yes. Intl.DateTimeFormat is native (no extra bundle size), fast, and supports a wide range of locales. Libraries like Moment.js or Luxon offer additional features like date manipulation, relative time, and time zone conversion. For pure formatting, Intl.DateTimeFormat is often the best choice. Combined with Intl.RelativeTimeFormat and Intl.NumberFormat, you can cover most i18n needs natively.
Use Intl.DateTimeFormat.supportedLocalesOf([locale]) to check if a locale is supported before using it. If the returned array is empty, fall back to a default locale (like en-US). Intl.DateTimeFormat itself will also automatically fall back to a similar supported locale if the requested one isn't available, but explicitly checking gives you more control.
Estimate due date from last menstrual period or conception date. Uses Naegele's rule and shows week-by-week milestones. Local calculator for informational use.
Paste simple G-code and see a 2D plot. Quick check before sending to machine. Local parser.
Calculate your weekly, monthly, or annual pay based on hourly wage and hours. Include overtime rates. Accurate and private.
List of major annual meteor showers with next peak date and moon phase prediction. Stargazing planner.
Build a color palette for charts that works for protanopia, deuteranopia, and grayscale. Export as array.
Select food item and thickness to see recommended dehydrator temperature and drying time. Reference chart.
Upload a small file to see each byte as a block, color-coded by value. Visualize the structure of binary data. Client-side.
Paste text, highlight important parts, and extract only highlights. Great for research and studying. Entirely client-side.
Accurate online stopwatch with lap and split time capabilities. Start, pause, and reset. Ideal for sports and presentations. Runs natively in the browser.
Convert cat age to human years using updated veterinary guidelines (not simple 1:7). Provides life stage context. Local only.
Paste a URL and see the og:title, description, image, and twitter card that will be used when shared. No server needed.
Select meat type and weight to get optimal brine time. Avoid overβsalting.
Select a bone and see typical healing duration in weeks. Educational information only.
Simulate an earthquake alarm with a countdown and visual instructions for Drop, Cover, and Hold On.
List assignments with estimated minutes. See total time and break into Pomodoro sessions. Stay motivated.
Enter total drive time or playlist length to figure out how many songs you need. Convert time to estimated tracks.
Log your daily mood and view trends on a calendar. Encourages mindfulness. Data stored only in your browser's localStorage for complete privacy.
Display a dynamic list of keyboard shortcuts for the current browser and operating system. Filter by category. Keep it open for reference.
Convert rabbit age to human years considering their rapid early maturation. Fun tool for house rabbit owners. Local only.
Calculate the time needed to deposit a certain mass of metal using current. Chemistry lab tool.
See how old your hamster is in human-equivalent years. Fun fact: a 3-month-old hamster is already a young adult. Local only.
Follow an interactive temperature curve for dark, milk, or white chocolate. Set timers for each phase to achieve perfect temper without a machine.
Find the date of Easter Sunday for any given year. Learn about the computus algorithm. Simple and accurate.
Select your OS, IDE, and programming language to generate a complete .gitignore file. No typing required.
Estimate monthly mortgage payments with amortization schedule. Input loan amount, interest rate, and term. All calculations performed securely on your device.
Advanced metronome with eighth, triplet, and sixteenth note subdivisions. Accent controls. Web Audio scheduling.
Convert angles between degrees, radians, and grads. Quick reference for mathematics and engineering. Simple and ad-free.
Convert guinea pig age to approximate human years. Cute facts included. For guinea pig lovers. 100% local.
Enter material thickness and get the recommended pop rivet diameter and grip range.
Countdown timer for applying a heating pad. Includes recommended max session. Prevent burns.