ใช้ toISOString() แล้วตัดและแทนที่ตัวอักษร 'T' ให้เป็น Space
โค้ด JavaScript
<!DOCTYPE html>
<html>
<head>
<title>JS Date to MySQL Datetime</title>
<script>
document.writeln(new Date().toISOString().slice(0, 19).replace('T', ' '));
</script>
</head>
<body>
<br>Current Date is displayed above...
</body>
</html>
ผลลัพธ์
2018-11-23 11:14:38 Current Date is displayed above...
อธิบายโค้ด
new Date()- สร้าง Date object ปัจจุบัน.toISOString()- แปลงเป็น ISO 8601 format:2018-11-23T11:14:38.123Z.slice(0, 19)- ตัดเอาแค่ 19 ตัวอักษรแรก:2018-11-23T11:14:38.replace('T', ' ')- แทนที่ T ด้วย Space:2018-11-23 11:14:38(MySQL DATETIME format)
หมายเหตุ: วิธีนี้ให้ UTC Time หากต้องการ Local Time ให้ใช้ toLocaleString() หรือ Library อย่าง date-fns, moment.js แทน