"Get time difference between two dates"
ถ้าค้นหาด้วยคีย์เวิร์ดนี้ เราจะเจอวิธีการเขียนโปรแกรมเปรียบเทียบวันเวลาที่หลากหลาย ให้เลือกใช้กันตามที่ถนัดได้เลยครับจากบทความที่แล้วผมได้แนะนำเกี่ยวกับการเขียนโปรแกรม "PHP กับการเลื่อนกำหนดเวลาครั้งถัดไป เมื่อบันทึกเลยกำหนดในครั้งก่อน" ซึ่งเป็นการทำงานในเวอร์ชั่นภาษา PHP จากนั้นก็มีแฟนเพจ "PHP สำหรับผู้เริ่มต้น" ได้สอบถามเข้ามาอีกว่าถ้าต้องการเขียนโปรแกรมเปรียบเทียบเวลาโดยใช้ JavaScript ล่ะ จะต้องเขียนแบบไหน จึงเป็นที่มาของบทความแนะนำการ "เขียนโปรแกรม JavaScript เปรียบเทียบเวลา หาความต่างของเวลา Day, Hours, Minute, Seconds" นี้ครับ
สำหรับซอร์สโค้ดที่ใช้ มีดังต่อไปนี้ครับ
[ JavaScript Code ]
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>การหาผลต่างของเวลาด้วย JavaScript</title>
</head>
<body>
<h1>การหาผลต่างของเวลาด้วย JavaScript</h1>
<div><input id="text1" /></div>
<div><input id="text2" /></div>
<div><input id="total" /></div>
<div><input type="button" value="Process" onclick="CheckTime()" /></div>
<script>
function CheckTime(){
//Get datetime from input
datetime1 = document.getElementById('text1').value;
datetime2 = document.getElementById('text2').value;
//Set date time format
var startDate = new Date(datetime1);
var endDate = new Date(datetime2);
var seconds = (endDate.getTime() - startDate.getTime()) / 1000;
//Calculate time
var days = Math.floor(seconds / (3600*24));
var hrs_d = Math.floor((seconds - (days * (3600*24))) / 3600);
var hrs = Math.floor(seconds / 3600);
var mnts = Math.floor((seconds - (hrs * 3600)) / 60);
var secs = seconds - (hrs * 3600) - (mnts * 60);
//Add 0 if one digit
if(hrs_d<10) hrs_d = "0" + hrs_d;
if(mnts<10) mnts = "0" + mnts;
if(secs<10) secs = "0" + secs;
document.getElementById('total').value = days + ' ' + hrs_d + ':' + mnts + ':' + secs;
}
</script>
</body>
</html>
ถ้านับโค้ดด้านบนนี้ไปลองรันดู เมื่อเราป้อนวันเวลาในช่องที่ 1 และ ช่องที่ 2 จากนั้นกดปุ่ม "Process" ก็จะปรากฏผลลัพธ์ค่าวันเวลาที่ต่างกันในช่องที่ 3
ซึ่งจากโค้ดนี้เราสามารถนำค่าเวลาที่หน่วยเป็นวินาทีในตัวแปร seconds ไปเพิ่มลดเวลา หรือชดเชยเวลาให้กับกำหนดการครั้งต่อไปได้ ซึ่งผู้เขียนจะแนะนำวิธีการในโอกาสต่อไป
สนับสนุนค่ากาแฟผู้เขียนได้ที่
( Mobile Banking / Application )
สนับสนุนค่ากาแฟผู้เขียนได้ที่
PHP CI MANIA - PHP Code Generator
โปรแกรมช่วยสร้างโค้ด ลดเวลาการเขียนโปรแกรม เขียนโปรแกรมง่ายและสะดวกขึ้น
สนใจสั่งซื้อราคาสุดคุ้ม >> http://fastcoding.phpcodemania.com/
:: อ้างอิง ::
Get time difference between two dates in secondshttps://stackoverflow.com/questions/13894632/get-time-difference-between-two-dates-in-seconds
Convert to days,hours,minutes,seconds
https://stackoverflow.com/questions/36098913/convert-to-days-hours-minutes-seconds
change time format to 24 hours in javascript
https://stackoverflow.com/questions/22347521/change-time-format-to-24-hours-in-javascript
ความคิดเห็น
แสดงความคิดเห็น