Format JS date เมื่อวานนี้

Chokchai Phatharamalai
odds.team
Published in
Apr 17, 2023
Photo by Jonathan J. Castellon on Unsplash

เมื่อวานผม pair กับทีมเพื่อหาทางทำให้ได้ string ในรูปแบบ “March 17, 2023” โดยอยากให้วันเป็นเมื่อวานนี้เสมอ ผมลองค้นดูเจอมากมายหลายท่าตามประสา JavaScript เลยอยากเอาท่าที่เลือก (ว่าอ่านออก) มาจดเก็บไว้

เมื่อวานนี้

ตอนแรกเจอท่าด้านล่าง

const yesterday = new Date(new Date().setDate(new Date().getDate()-1));

แต่พบว่าอ่านเข้าใจยากมากเลย เจนไปหามาให้อีกท่าที่อ่านง่ายกว่า

const yesterday = new Date((new Date()).valueOf() - 1000*60*60*24);

Format Date

ผมเจอว่า คำสั่ง getLocaleString เป็นคำสั่งที่ใส่ format options เข้าไปได้ ท่านี้ดูทำได้ง่ายกว่าไปนั่งดึงวัน เดือน ปี ใน date มาแปลงเอง

new Date().toLocaleDateString('en-us', { 
weekday:"long", year:"numeric", month:"short", day:"numeric"
}) // "Friday, Jul 2, 2021"

อยากเอามาจดเก็บไว้ คราวหน้าจะได้หาเร็วขึ้น

อ้างอิง

--

--