23 มี.ค. 2023 เวลา 04:07 • วิทยาศาสตร์ & เทคโนโลยี

แปลงวันที่ฝรั่งให้เป็นวันที่แบบไทยๆ ใน Google Script

การจะสั่งให้แสดงผลวันที่ฝรั่ง (ค.ศ.) ให้เป็นไทยเลยตรงๆ นั้น ใน Google Script ไม่มีฟังก์ชั่นแบบนั้นตรงๆ นะ (คิดว่านะเพราะพยายามหาแล้วไม่เจอ) จึงจำเป็นต้องเขียนฟังก์ชั่นขึ้นมาเอง ดังนี้
function thaiDate(cDate) {
var month = Utilities.formatDate(cDate, "GMT+7", "MM");
var day = Utilities.formatDate(cDate, "GMT+7", "d");
var year = Number(Utilities.formatDate(cDate, "GMT+7", "yyyy"))+543;
var thaiMonth;
switch (month){
case "01" :
thaiMonth = "มกราคม";
break;
case "02" :
thaiMonth = "กุมภาพันธ์";
break;
case "03" :
thaiMonth = "มีนาคม";
break;
case "04" :
thaiMonth = "เมษายน";
break;
case "05" :
thaiMonth = "พฤษภาคม";
break;
case "06" :
thaiMonth = "มิถุนายน";
break;
case "07" :
thaiMonth = "กรกฎาคม";
break;
case "08" :
thaiMonth = "สิงหาคม";
break;
case "09" :
thaiMonth = "กันยายน";
break;
case "10" :
thaiMonth = "ตุลาคม";
break;
case "11" :
thaiMonth = "พฤศจิกายน";
break;
case "12" :
thaiMonth = "ธันวาคม";
break;
}
var tDate = day + " " + thaiMonth + " " + year;
return tDate;
}
ขั้นตอนก็คือ รับค่าวันที่ (ค.ศ.) มาเช่น 22/1/2023 จากนั้นนำมาแยก เป็นวัน เดือน และปี ตัวมีปัญหาคือเดือน ต้องเทียบเลขเดือน แปลงเป็นภาษาไทย และปี ค.ศ. เป็น พ.ศ. โดยการบวก 534
โฆษณา