ToolDeck

ตัวแปลงเขตเวลา

แปลงวันที่และเวลาระหว่างเขตเวลาทั่วโลก

UTCUTC+00:00

04/16/2026, 21:55:00

America/New_YorkUTC-04:00

04/16/2026, 17:55:00

การแปลงเขตเวลาคืออะไร?

ตัวแปลงเขตเวลาจะแปลงวันที่และเวลาจากเขตเวลาหนึ่งไปยังอีกเขตเวลาหนึ่ง ทำให้คุณเห็นทันทีว่าเวลาที่เทียบเท่าในที่ใดก็ได้ทั่วโลกคือเวลาใด โลกแบ่งออกเป็น 24 เขตเวลาหลัก โดยแต่ละเขตกำหนดเป็นค่าออฟเซตคงที่จาก Coordinated Universal Time (UTC) เมื่อเวลา UTC คือ 14:00 น. จะเป็น 09:00 น. ที่นิวยอร์ก (UTC-5) และ 23:00 น. ที่โตเกียว (UTC+9) การแปลงเขตเวลาให้ถูกต้องต้องทราบค่าออฟเซต UTC ของทั้งเขตต้นทางและปลายทาง และต้องรู้ว่าเวลาออมแสง (DST) มีผลบังคับใช้กับเขตใดเขตหนึ่งหรือไม่

IANA Time Zone Database (มักเรียกว่า Olson database หรือ tz database) คือแหล่งข้อมูลมาตรฐานสำหรับนิยามเขตเวลาที่ระบบปฏิบัติการ ภาษาโปรแกรม และเว็บเบราว์เซอร์ใช้ ฐานข้อมูลนี้กำหนดตัวระบุมาตรฐานให้แต่ละเขตในรูปแบบ Region/City เช่น America/New_York หรือ Asia/Tokyo ซึ่งแตกต่างจากตัวย่อคงที่อย่าง EST หรือ PST ตัวระบุ IANA เก็บประวัติการเปลี่ยนแปลงค่าออฟเซต UTC และการเปลี่ยนผ่าน DST ทั้งหมดสำหรับแต่ละภูมิภาค ทำให้เป็นวิธีเดียวที่เชื่อถือได้สำหรับการแปลงเวลาข้ามวันที่ในอดีตหรืออนาคต

ตัวแปลงเขตเวลานี้ใช้ข้อมูลเขตเวลา IANA ที่มีอยู่ใน JavaScript engine ของเบราว์เซอร์ผ่าน Intl API คุณเลือกเขตเวลาต้นทาง กรอกวันที่และเวลา จากนั้นเครื่องมือจะคำนวณเวลาที่เทียบเท่าในเขตเวลาปลายทางทันที รวมถึงการปรับเวลาออมแสงด้วย เนื่องจากทำงานในเบราว์เซอร์ทั้งหมด จึงไม่มีการส่งข้อมูลไปยังเซิร์ฟเวอร์และข้อมูลไม่ออกจากอุปกรณ์ของคุณ

ทำไมต้องใช้ตัวแปลงเขตเวลานี้?

การคำนวณเขตเวลาด้วยตนเองเกิดข้อผิดพลาดได้ง่าย โดยเฉพาะเมื่อต้องจัดการกับเวลาออมแสง เมืองที่อยู่ที่ UTC-5 ในเดือนมกราคมอาจอยู่ที่ UTC-4 ในเดือนกรกฎาคม และวันเปลี่ยนผ่านก็แตกต่างกันในแต่ละประเทศ สหรัฐอเมริกาและยุโรปเปลี่ยนนาฬิกาในวันอาทิตย์คนละสัปดาห์กัน ทำให้มีช่วงสองสัปดาห์ที่ค่าออฟเซตระหว่างนิวยอร์กกับลอนดอนต่างจากช่วงที่เหลือของปี เครื่องมือนี้จัดการการเปลี่ยนผ่านทั้งหมดโดยอัตโนมัติโดยใช้ฐานข้อมูล IANA เดียวกับที่ระบบปฏิบัติการของคุณใช้

~
แปลงได้ทันที
เลือกสองเขตเวลา กรอกเวลา และดูผลลัพธ์ทันที ไม่ต้องส่งฟอร์ม ไม่ต้องโหลดหน้าใหม่ การแปลงอัปเดตขณะที่คุณพิมพ์
~
ผลลัพธ์ที่คำนึงถึง DST
ตัวแปลงคำนวณการเปลี่ยนผ่านเวลาออมแสงโดยอัตโนมัติ โดยใช้ข้อมูลเขตเวลา IANA ที่มีอยู่ในเบราว์เซอร์ ผลลัพธ์จึงสะท้อนค่าออฟเซตที่ถูกต้องสำหรับทุกวันที่ที่คุณกรอก ไม่ว่าจะเป็นอดีตหรืออนาคต
~
ประมวลผลโดยให้ความเป็นส่วนตัวก่อน
การแปลงทั้งหมดทำงานในเบราว์เซอร์ผ่าน Intl API วันที่ เวลา หรือการเลือกเขตเวลาไม่ถูกส่งไปยังเซิร์ฟเวอร์ใด
~
ไม่ต้องสมัครสมาชิก
ใช้ตัวแปลงได้โดยไม่ต้องลงทะเบียน ติดตั้งซอฟต์แวร์ หรือให้สิทธิ์ใด เปิดหน้าเว็บ แปลงเวลาของคุณ แล้วปิด

กรณีการใช้งานตัวแปลงเขตเวลา

การนัดหมายข้ามทีม
เมื่อทีมของคุณกระจายอยู่ที่นิวยอร์ก เบอร์ลิน และสิงคโปร์ การหาเวลาประชุมที่เหมาะกับทุกคนต้องแปลงเวลาข้ามสามเขตเวลาขึ้นไป กรอกเวลาที่เสนอในเขตเวลาของคุณแล้วดูทันทีว่าเวลาที่เทียบเท่าในเขตเวลาของสมาชิกแต่ละคนอยู่ในช่วงเวลาทำงานหรือไม่
การดีบัก API Timestamp
การตอบสนองของ API มักมี timestamp ใน UTC หรือเขตเวลาของเซิร์ฟเวอร์ แปลง timestamp เหล่านั้นเป็นเวลาท้องถิ่นของคุณเพื่อตรวจสอบว่าเหตุการณ์เกิดขึ้นตามที่คาดไว้และลอจิกที่ขึ้นอยู่กับเวลาทำงานถูกต้อง
ไทม์ไลน์ Incident ของ DevOps
ระหว่างเกิด incident รายการ log อาจมาจากเซิร์ฟเวอร์ในภูมิภาคต่างๆ แปลง timestamp ทั้งหมดเป็นเขตเวลาอ้างอิงเดียว (โดยทั่วไปคือ UTC) เพื่อสร้างไทม์ไลน์เหตุการณ์ที่ถูกต้อง
การทดสอบ QA สำหรับลอจิกวันที่
แอปพลิเคชันที่แสดงวันที่ให้ผู้ใช้ในภูมิภาคต่างๆ ต้องทดสอบด้วยเขตเวลาอินพุตเฉพาะ ใช้ตัวแปลงเพื่อสร้างกรณีทดสอบสำหรับเงื่อนไขขอบเขต เช่น ชั่วโมงที่ถูกข้ามเมื่อ DST เริ่มต้น
การประสานงาน Data Pipeline
งาน ETL ที่กำหนดเวลาในเขตเวลาหนึ่งอาจต้องให้ตรงกับกำหนดการของแหล่งข้อมูลหรือผู้บริโภคปลายทางในอีกเขตเวลาหนึ่ง แปลงเวลาที่กำหนดไว้เพื่อตรวจสอบว่าขั้นตอนใน pipeline ดำเนินการในลำดับที่ถูกต้อง
การเรียนรู้แนวคิดเขตเวลา
นักศึกษาที่เรียนรู้เกี่ยวกับค่าออฟเซต UTC เส้นวันที่นานาชาติ และกฎเวลาออมแสงสามารถทดลองกับคู่เขตเวลาต่างๆ เพื่อดูว่าเวลาเปลี่ยนแปลงอย่างไรในแต่ละภูมิภาค

ตารางอ้างอิงเขตเวลา IANA

IANA Time Zone Database กำหนดตัวระบุเขตเวลามากกว่า 400 รายการ และได้รับการอัปเดตหลายครั้งต่อปีเพื่อสะท้อนการเปลี่ยนแปลงทางการเมือง กฎ DST ใหม่ และการแก้ไขข้อมูลทางประวัติศาสตร์ ตารางด้านล่างแสดงเขตเวลาที่ใช้กันทั่วไปพร้อมค่าออฟเซต UTC มาตรฐานและพฤติกรรม DST ค่าออฟเซตที่แสดงเป็นสำหรับเวลามาตรฐาน คอลัมน์ DST แสดงค่าออฟเซตที่ปรับแล้วเมื่อเวลาออมแสงมีผลบังคับใช้ในภูมิภาคนั้น

ตัวระบุ IANAชื่อทั่วไปUTC OffsetDST
UTCCoordinated Universal Time+00:00No
America/New_YorkEastern Time (US)-05:00Yes (EDT -04:00)
America/ChicagoCentral Time (US)-06:00Yes (CDT -05:00)
America/DenverMountain Time (US)-07:00Yes (MDT -06:00)
America/Los_AngelesPacific Time (US)-08:00Yes (PDT -07:00)
Europe/LondonGreenwich Mean Time+00:00Yes (BST +01:00)
Europe/BerlinCentral European Time+01:00Yes (CEST +02:00)
Europe/MoscowMoscow Time+03:00No
Asia/DubaiGulf Standard Time+04:00No
Asia/KolkataIndia Standard Time+05:30No
Asia/ShanghaiChina Standard Time+08:00No
Asia/TokyoJapan Standard Time+09:00No
Australia/SydneyAustralian Eastern Time+10:00Yes (AEDT +11:00)
Pacific/AucklandNew Zealand Standard Time+12:00Yes (NZDT +13:00)

ตัวอย่างโค้ด

ภาษาโปรแกรมหลักทุกภาษามีการแปลงเขตเวลาผ่านฐานข้อมูล IANA ตัวอย่างด้านล่างแสดงวิธีแปลง UTC timestamp เป็นเขตเวลาอื่นใน JavaScript โดยใช้ Intl API, Python โดยใช้ zoneinfo module, Go โดยใช้ time package และคำสั่ง GNU date สำหรับ shell script

JavaScript (Intl API)
// Convert a date from one timezone to another
const date = new Date('2026-03-15T09:00:00Z')

// Format in specific timezone
const nyTime = date.toLocaleString('en-US', { timeZone: 'America/New_York' })
// → "3/15/2026, 5:00:00 AM"

const tokyoTime = date.toLocaleString('en-US', { timeZone: 'Asia/Tokyo' })
// → "3/15/2026, 6:00:00 PM"

// Get the UTC offset for a timezone programmatically
function getUtcOffset(tz: string, date = new Date()) {
  const fmt = new Intl.DateTimeFormat('en-US', {
    timeZone: tz,
    timeZoneName: 'longOffset',
  })
  const parts = fmt.formatToParts(date)
  return parts.find(p => p.type === 'timeZoneName')?.value ?? ''
}
getUtcOffset('Asia/Kolkata') // → "GMT+05:30"
Python (zoneinfo + datetime)
from datetime import datetime
from zoneinfo import ZoneInfo

# Create a timezone-aware datetime
dt = datetime(2026, 3, 15, 9, 0, tzinfo=ZoneInfo('UTC'))

# Convert to New York time
ny = dt.astimezone(ZoneInfo('America/New_York'))
print(ny)  # → 2026-03-15 05:00:00-04:00 (EDT in March)

# Convert to Tokyo time
tokyo = dt.astimezone(ZoneInfo('Asia/Tokyo'))
print(tokyo)  # → 2026-03-15 18:00:00+09:00

# Get current time in any timezone
now_berlin = datetime.now(ZoneInfo('Europe/Berlin'))
print(now_berlin.strftime('%Y-%m-%d %H:%M %Z'))  # → 2026-03-15 10:00 CET
Go
package main

import (
	"fmt"
	"time"
)

func main() {
	utc := time.Date(2026, 3, 15, 9, 0, 0, 0, time.UTC)

	// Load timezone by IANA name
	ny, _ := time.LoadLocation("America/New_York")
	tokyo, _ := time.LoadLocation("Asia/Tokyo")

	fmt.Println(utc.In(ny))    // → 2026-03-15 05:00:00 -0400 EDT
	fmt.Println(utc.In(tokyo)) // → 2026-03-15 18:00:00 +0900 JST

	// Get the UTC offset in seconds
	_, offset := utc.In(ny).Zone()
	fmt.Printf("UTC offset: %+d hours\n", offset/3600) // → UTC offset: -4 hours
}
CLI (GNU date / TZ variable)
# Display current time in a specific timezone
TZ='Asia/Tokyo' date '+%Y-%m-%d %H:%M:%S %Z'
# → 2026-03-15 18:00:00 JST

# Convert a UTC timestamp to another timezone
TZ='America/Los_Angeles' date -d '2026-03-15T09:00:00Z' '+%Y-%m-%d %H:%M %Z'
# → 2026-03-15 02:00 PDT

# List all available IANA timezone names
timedatectl list-timezones | head -20

คำถามที่พบบ่อย

ความแตกต่างระหว่าง UTC กับ GMT คืออะไร?
UTC (Coordinated Universal Time) และ GMT (Greenwich Mean Time) แสดงเวลาเดียวกันในทางปฏิบัติ คือค่าออฟเซตเป็นศูนย์จากเส้นเมริเดียนหลัก ความแตกต่างเป็นเรื่องทางเทคนิค UTC กำหนดโดยนาฬิกาอะตอมและเป็นมาตรฐานเวลาสากลที่ใช้ในการคำนวณ GMT คือชื่อเขตเวลาที่เชื่อมกับสหราชอาณาจักร ในโค้ด ให้ใช้ UTC เป็นจุดอ้างอิงเสมอ ไม่ใช่ GMT
เวลาออมแสงส่งผลต่อการแปลงเขตเวลาอย่างไร?
เมื่อภูมิภาคใช้ DST ค่าออฟเซต UTC จะเลื่อนหนึ่งชั่วโมง (บางครั้ง 30 หรือ 45 นาที) ในบางช่วงของปี ตัวอย่างเช่น America/New_York คือ UTC-5 ในฤดูหนาว (EST) และ UTC-4 ในฤดูร้อน (EDT) หากคุณกำหนดค่าออฟเซตแบบตายตัวแทนที่จะใช้ตัวระบุเขตเวลา IANA การแปลงของคุณจะผิดครึ่งปี ให้ใช้ชื่อ IANA แบบเต็มอย่าง America/New_York เสมอ ไม่ใช่ค่าออฟเซตคงที่
ทำไมต้องใช้ชื่อเขตเวลา IANA แทนตัวย่อเช่น EST หรือ PST?
ตัวย่อเขตเวลามีความกำกวม CST อาจหมายถึง Central Standard Time (UTC-6), China Standard Time (UTC+8) หรือ Cuba Standard Time (UTC-5) ตัวระบุ IANA อย่าง America/Chicago มีความเป็นเอกลักษณ์ทั่วโลกและเก็บประวัติการเปลี่ยนแปลงค่าออฟเซตและกฎ DST ทั้งหมดสำหรับภูมิภาคนั้น ฐานข้อมูล IANA ดูแลโดย Internet Assigned Numbers Authority และอัปเดตหลายครั้งต่อปี
จะเกิดอะไรขึ้นกับเวลาที่ตกอยู่ในช่วงที่ถูกข้ามไปเมื่อ DST เริ่มต้น?
เมื่อนาฬิกาเดินหน้า จะมีหนึ่งชั่วโมงที่ถูกข้ามไป ตัวอย่างเช่น ใน America/New_York เวลา 2:00 น. จะกระโดดไปเป็น 3:00 น. โดยตรงในวันอาทิตย์ที่สองของเดือนมีนาคม เวลาอย่าง 2:30 น. ไม่มีอยู่จริงในวันนั้นในเขตเวลานั้น ภาษาโปรแกรมส่วนใหญ่จัดการเรื่องนี้โดยเลื่อนเวลาไปเป็น 3:00 น. หรือโยนข้อผิดพลาด ขึ้นอยู่กับไลบรารี
สามารถแปลงเวลาสำหรับวันที่ในอดีตได้อย่างถูกต้องหรือไม่?
ได้ หากใช้ตัวระบุเขตเวลา IANA ฐานข้อมูล IANA มีการเปลี่ยนแปลงค่าออฟเซตทางประวัติศาสตร์ย้อนหลังหลายทศวรรษ ตัวอย่างเช่น จีนใช้ห้าเขตเวลาก่อนปี 1949 และเปลี่ยนเป็นเขตเวลาเดียว (UTC+8) หลังจากนั้น ฐานข้อมูลบันทึกการเปลี่ยนผ่านเหล่านี้ไว้ ดังนั้นการแปลง timestamp ปี 1945 สำหรับ Asia/Shanghai จึงใช้ค่าออฟเซตทางประวัติศาสตร์ที่ถูกต้อง
จะจัดเก็บเวลาในฐานข้อมูลอย่างไรเพื่อหลีกเลี่ยงปัญหาเขตเวลา?
จัดเก็บ timestamp ทั้งหมดใน UTC เมื่อแสดงเวลาให้ผู้ใช้ ให้แปลงจาก UTC เป็นเขตเวลาท้องถิ่นของผู้ใช้ ณ เวลาที่แสดงผล วิธีนี้หลีกเลี่ยงความกำกวม เพราะ UTC timestamp มีความหมายเดียวโดยไม่คำนึงว่าเซิร์ฟเวอร์หรือผู้ใช้อยู่ที่ใด ประเภท TIMESTAMPTZ ของ PostgreSQL และประเภท TIMESTAMP ของ MySQL ต่างจัดเก็บค่าใน UTC ภายใน
มีเขตเวลาที่มีค่าออฟเซตครึ่งชั่วโมงหรือ 45 นาทีหรือไม่?
มี India Standard Time (Asia/Kolkata) คือ UTC+5:30, Nepal Standard Time (Asia/Kathmandu) คือ UTC+5:45 และหมู่เกาะ Chatham (Pacific/Chatham) คือ UTC+12:45 อิหร่าน (Asia/Tehran) ใช้ UTC+3:30 ค่าออฟเซตเศษส่วนเหล่านี้หมายความว่าคุณไม่สามารถสมมติได้ว่าความแตกต่างของเขตเวลาทั้งหมดเป็นจำนวนชั่วโมงเต็มเมื่อเขียนลอจิกการแปลง