การแปลงวันที่เป็นสตริง

TypeScript:
การแปลงวันที่เป็นสตริง

วิธีการ:

// การแปลงแบบง่ายๆ โดยใช้ toLocaleString()
let date = new Date();
let dateString = date.toLocaleString();
console.log(dateString); // "4/3/2023, 1:15:30 PM" (จะแตกต่างกันตามสถานที่)

// รูปแบบ ISO โดยใช้ toISOString()
let isoString = date.toISOString();
console.log(isoString); // "2023-04-03T13:15:30.000Z"

// รูปแบบที่กำหนดเองโดยใช้ toLocaleDateString()
let customString = date.toLocaleDateString('en-US', {
  year: 'numeric',
  month: 'long',
  day: 'numeric',
});
console.log(customString); // "April 3, 2023"

ทำความเข้าใจลึกซึ้ง

คิดถึงรูปแบบสตริงของวันที่เหมือนกับหนังสือเดินทางของมัน ทำให้สามารถเดินทางข้ามขอบเขตระบบได้ - จากฐานข้อมูลไปยังเว็บเพจ ในอดีต เราเคยอยู่กับรูปแบบวันที่ที่ไม่ตรงกัน นั่นเป็นเหตุผลที่มีการแนะนำมาตรฐานเช่น ISO 8601 เพื่อให้การแลกเปลี่ยนวันที่ทั่วโลกง่ายขึ้น

เลือกอื่นที่ไม่ใช่วิธีในตัว? ไลบรารี! Moment.js คือตัวเลือกหลักมาหลายปี แต่ในปัจจุบัน date-fns หรือ Luxon เป็นตัวเลือกที่ชื่นชอบ - เพราะมันเบากว่าและมีโมดูลมากกว่า

สาระสำคัญของการแปลงเหล่านี้อยู่ในวิธีการที่ใช้ toLocaleString() อิงกับสถานที่ของผู้ใช้, ทำให้มันเหมาะสมอย่างยิ่งในการแสดงให้กับผู้ใช้ toISOString() อย่างไรก็ตาม, ยังคงจริงกับรูปแบบ ISO 8601, ซึ่งเป็นเรื่องยอดเยี่ยมสำหรับการทำให้วันที่มีรูปแบบมาตรฐานสำหรับการเก็บรักษา และ toLocaleDateString() ให้คุณควบคุมรูปลักษณ์, ตอบสนองต่อความต้องการด้านสไตล์เฉพาะ

ดูเพิ่มเติม