Tag Archive date

Byphunsanit

วันและเวลาในจาว่าสคริปต์

การทำงานเกี่ยวกับ วันที่และเวลาบน จาว่าสคริปต์ ก่อนอื่นเราต้องสร้างออบเจ็ควันที่และเวลาขึ้นมาก่อนโดยประกาศ new Date()
ประกาศได้หลายรูปแบบคือ
• dateTimeObj = new Date() จะได้วันเวลาปัจจุบัน
• dateTimeObj = new Date(1297876193291) มิลลิวินาทีโดยนับหนึ่งตั้งแต่วันที่ 1970/01/01
• dateTimeObj = new Date(‘February17, 2011 21:13:00’) ( เวลาจะใส่หรือไม่ก็ได้ครับ )
• dateTimeObj = new Date(2011,1,17,21,13,0) รูปแบบคือ ปีค.ศ. ,เดือน – 1 ,วันที่ ,ชั่วโมง (24 ชั่วโมง) ,นาที วินาที ( เวลาจะใส่หรือไม่ก็ได้ครับ )
เมื่อได้ออบเจ็ควันที่และเวลา ( ในตัวอย่างคือ dateTimeObj ) มาแล้วสามารถ เมทอดแสดงค่ารูปแบบต่างๆ เช่น

alert ('วันที่คือ ' + dateTimeObj.getDate() + '/' + dateTimeObj.getMonth() + '/' + dateTimeObj.getFullYear() 

เมทอดที่ใช้บ่อย เช่น

getDate()วันที่ ( 1 – 31 )
getDay()ลำดับของวัน ( 0 – 6 )
getFullYear()ปี 4 หลัก
getHours()ชั่วโมง ( 0 – 23 )
getMilliseconds()มิลลิวินาที ( Millisecond ) ( 0 – 999 )
getMinutes()นาที ( 0 – 59 )
getMonth()เดือน ( 0 – 11 )
getSeconds()วินาที ( 0 – 59 )
toString()Thu Feb 17 2011 00:30:21 GMT+0700 (SE Asia Standard Time)

จะเห็นว่าส่วนใหญ่จะเริ่มต้นโดยนับจาก 0 อันนี้ทำให้ต้องระมัดระวังในการใช้งาน เช่น ถ้าจะหาความแตกต่างระหว่างวันที่ 2 วันคือ

today = new Date();
dateTimeObj = new Date(2011,1,17,21,13,0);
 /* 17/02/2011 13.00 น. */
difference = dateTimeObj - today;
days = Math.round( difference / (1000*60*60*24) );
/* ( 17/02/2011 - วันนี้ ) หารด้วย ( มิลลิวินาที x วินาที x นาที x วัน ) จากนั้นปัดเศษขึ้น */
alert('วันต่างกัน ' + days + ' วัน' );

สังเกตว่า ในหลาย ๆ จุด ค่าตัวเลขจะน้อยกว่าที่เราใช้ตามปกติอยู่ 1 ค่า
ดูเพิ่มเติม