คำนำ
ในการพัฒนาจาวาสคริปต์ส่วนหน้าเรามักจะพบปัญหาของวันที่ประมวลผลและเวลา เรามักจะใช้ฟังก์ชั่นการประมวลผลจำนวนมากเพื่อให้เอฟเฟกต์การแสดงผลวันที่และเวลาง่ายขึ้น เพื่อปรับปรุงความเร็วในการพัฒนาของเว็บไซต์คุณสามารถห่อหุ้มรหัสหลักในฟังก์ชั่นแยกต่างหากและเรียกมันโดยตรงเมื่อจำเป็น ลองมาดูคลาสการประมวลผลเวลาที่คุณสรุป เพียงแค่เรียกมันโดยตรงเมื่อคุณต้องการ
var mydate = new date (); mydate.getYear (); // รับปีปัจจุบัน (2 หลัก) mydate.getlyear (); // รับทั้งปี (4 หลัก, 1970-????) mydate.getMonth (); // รับเดือนปัจจุบัน (0-11, 0 หมายถึงมกราคม) myDate.getDate (); // รับวันปัจจุบัน (1-31) mydate.getday (); // รับสัปดาห์ปัจจุบัน x (0-6, 0 หมายถึงวันอาทิตย์) myDate.getTime (); // รับเวลาปัจจุบัน (มิลลิวินาทีเริ่มต้นจาก 1970.1.1) myDate.GetHours (); // รับจำนวนชั่วโมงปัจจุบัน (0-23) myDate.getMinutes (); // รับจำนวนนาทีปัจจุบัน (0-59) mydate.getSeconds (); // รับหมายเลขปัจจุบันของวินาที (0-59) mydate.getMilliseconds (); // รับหมายเลขปัจจุบันของมิลลิวินาที (0-999) myDate.tolocaledateString (); // รับวันที่ปัจจุบัน var mytime = myDate.tolocaletimestring (); // รับเวลาปัจจุบัน mydate.tolocalestring (); // รับเวลาปัจจุบัน mydate.tolocalestring (); // รับเวลาปัจจุบัน mydate.tolocalestring (); // รับวันที่และเวลาสคริปต์วิธีการรายการรายการวันที่วันที่ prototype.isleapyear ผู้พิพากษากระโดดปีวันที่วันที่ prototype.format วันที่วันที่รูปแบบวันที่วันที่ prototype.dateadd วันที่การคำนวณวันที่วันที่ วันที่วันที่ prototype.maxdayofdate รับจำนวนสูงสุดของวันของเดือนที่วันที่คือวันที่ prototype.weeknumofyear กำหนดสัปดาห์ของปีที่วันที่สตริงสตริงวันที่ isvaliddate ตรวจสอบวันที่ตรวจสอบความถูกต้องวันที่ รหัส: // ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - - SS/SS/S/S วินาที // ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ - 100)); str = str.replace (/mm/, this.getMonth ()> 9? this.getMonth (). toString (): '0' + this.getMonth ()); str = str.replace (/m/g, this.getMonth ()); str = str.replace (/w | w/g, สัปดาห์ [this.getday ()]); str = str.replace (/dd this.this.getdate ()> 9? this.getdate (). toString (): '0' + this.getDate ()); str = str.replace (/d|d/g,this.getdate ()); str = str.replace (/hhth thh/, this.getHours ()> 9? this.getHours (). toString (): '0' + this.getHours ()); str = str.replace (/h|H/g.his.getHours ()); str = str.replace (/mm/, this.getMinutes ()> 9? this.getMinutes (). toString (): '0' + this.getMinutes ()); str = str.replace (/m/g, this.getMinutes ()); str = str.replace (/sss this.this.getSeconds ()> 9? this.getSeconds (). toString (): '0' + this.getSeconds ()); str = str.replace (/s thace/g, this.getSeconds ()); return str; - dateone.substring (5, dateone.lastindexof ('-')); var oneday = dateone.substring (dateone.length, dateone.lastindexof ('-')+1); var oneyear = dateone.substring (0, dateone.indexof ('-')); var twomonth = dateTwo.substring (5, dateTwo.lastindexof ('-')); var twoday = dateTwo.substring (dateTwo.length, dateTwo.lastindexof ('-')+1); var twoyear = dateTwo.substring (0, dateTwo.indexof ('-')); var cha = ((date.parse (onemonth+'/'+oneday+'/'+oneyear)- date.parse (twomonth+'/'+twoday+'/'+twoyear))/86400000); กลับมาคณิตศาสตร์ (cha); } //+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- สวิตช์ (strinterval) {case 's': ส่งคืนวันที่ใหม่ (date.parse (dttmp) + (1,000 * หมายเลข)); กรณี 'n': ส่งคืนวันที่ใหม่ (date.parse (dttmp) + (60000 * หมายเลข)); กรณี 'h': ส่งคืนวันที่ใหม่ (date.parse (dttmp) + (3600000 * หมายเลข)); กรณี 'D': ส่งคืนวันที่ใหม่ (date.parse (DTTMP) + (86400000 * หมายเลข)); กรณี 'W': ส่งคืนวันที่ใหม่ (date.parse (DTTMP) + (86400000 * หมายเลข)); กรณี 'W': ส่งคืนวันที่ใหม่ (date.parse (DTTMP) + (86400000 * หมายเลข)); กรณี 'W': ส่งคืนวันที่ใหม่ (date.parse (DTTMP) + (86400000 * หมายเลข)); กรณี 'W': ส่งคืนวันที่ใหม่ (date.parse (DTTMP) + (86400000 * หมายเลข)); กรณี 'W': ส่งคืนวันที่ใหม่ (date.parse (DTTMP) + (86400000 * หมายเลข)); กรณี 'W': ส่งคืนวันที่ใหม่ (date.parse (DTTMP) + (86400000 * หมายเลข)); กรณี 'W': ส่งคืนวันที่ใหม่ (date.parse (DTTMP) + ((86400000 * 7) * หมายเลข)); กรณี 'q': ส่งคืนวันที่ใหม่ (dttmp.getfulyear (), (dttmp.getMonth ()) + หมายเลข*3, dttmp.getdate (), dttmp.gethours (), dttmp.getMinutes (), dttmp.getseconds (); กรณี 'm': ส่งคืนวันที่ใหม่ (dttmp.getfulyear (), (dttmp.getMonth ()) + หมายเลข, dttmp.getdate (), dttmp.gethours (), dttmp.getMinutes (), dttmp.getSeconds ()); กรณี 'y': ส่งคืนวันที่ใหม่ ((dttmp.getfulyear () + หมายเลข), dttmp.getMonth (), dttmp.getdate (), dttmp.gethours (), dttmp.getMinutes (), dttmp.getSeconds ()); }} //+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - - 60000); กรณี 'h': return parseint ((dtend - dtstart) / 3600000); กรณี 'D': return ParseInt ((DTEND - DTSTART) / 86400000); กรณี 'W': return ParseInt ((DTEND - DTSTART) / (86400000 * 7)); กรณี 'm': return (dtend.getMonth ()+1)+((dtend.getLulyear () - dtStart.getUllyear ())*12) - (dtStart.getMonth ()+1); กรณี 'y': return dtend.getlyear () - dtstart.getlyear (); - - - + = 'สัปดาห์' + สัปดาห์ [mydate.getday ()]; } return str; - - - // ถ้ารูปแบบเป็นไปตาม yyyy-(/) มม.-(/) dd หรือ yyyy-(/) m-(/) dd หรือ yyyy-(/) m-(/) d หรือ yyyy-(/) mm-(/) d มันจะถูกแทนที่ด้วย '// ในฐานข้อมูล แปลงเป็นรูปแบบ yyyy-mm-dd โดยอัตโนมัติ var s = sdate.replace (/[/d] {4,4} [/-/] {1} [/d] {1,2} [/-/] {1} [/d] {1,2}/g, ''); if (s == '') // รูปแบบคำสั่งตรงกับ yyy-mm-dd หรือ yyyy-m-dd หรือ yyyy-md หรือ yyyy-mm-d {var t = วันที่ใหม่ (sdate.replace (//-/g, '/'); var ar = sdate.split (/[-/:]/); if (ar [0]! = t.getyear () || ar [1]! = t.getMonth ()+1 || ar [2]! = t.getdate ()) {// การแจ้งเตือน ('รูปแบบวันที่ผิด! รูปแบบคือ: yyyy-mm-dd หรือ yyyy/mm/dd. กลับเท็จ; }} else {// alert ('รูปแบบวันที่ผิดรูปแบบคือ: yyyy-mm-dd หรือ yyyy/mm/dd. หมายเหตุปีกระโดด'); กลับเท็จ; } return true; - - - var r = str.match (reg); ถ้า (r == null) ส่งคืนเท็จ; r [2] = r [2] -1; var d = วันที่ใหม่ (r [1], r [2], r [3], r [4], r [5], r [6]); ถ้า (d.getfulyear ()! = r [1]) ส่งคืนเท็จ; ถ้า (d.getmonth ()! = r [2]) ส่งคืนเท็จ; ถ้า (d.getdate ()! = r [3]) ส่งคืนเท็จ; ถ้า (d.getHours ()! = r [4]) ส่งคืนเท็จ; ถ้า (d.getMinutes ()! = r [5]) ส่งคืนเท็จ; ถ้า (d.getSeconds ()! = r [6]) ส่งคืนเท็จ; กลับมาจริง; - - - myarray [3] = mydate.getHours (); myArray [4] = myDate.getMinutes (); myArray [5] = myDate.getSeconds (); กลับ myArray; } //+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ = ['วัน', 'หนึ่ง', 'สอง', 'สาม', 'สี่', 'ห้า', 'หก']; สวิตช์ (ช่วงเวลา) {case 'y': partstr = myDate.getLuallyear (); break; กรณี 'm': PartsTr = myDate.getMonth ()+1; break; กรณี 'D': PartsTr = myDate.getDate (); Break; กรณี 'W': PartsTr = Week [myDate.getDay ()]; Break; กรณี 'ww': partstr = mydate.weeknumofyear (); break; กรณี 'H': PartsTr = Week [myDate.getDay ()]; Break; กรณี 'ww': partstr = mydate.weeknumofyear (); break; กรณี 'h': partstr = mydate.getHours (); break; กรณี 'n': partstr = myDate.getMinutes (); break; กรณี 's': partstr = mydate.getSeconds (); break; } return partstr; - (วันที่ใหม่ (ary [0], ary [1] +1,1)); var date2 = date1.dateAdd (1, 'M', 1); var result = datediff (date1.format ('yyyy-mm-dd'), date2.format ('yyyy-mm-dd')); ผลการกลับมา; } //+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ mydate.toarray (); var year = ary [0]; var month = ary [1] +1; var day = ary [2]; document.write ('<ภาษาสคริปต์ = vbscript/n'); document.write ('mydate = datue (' '+เดือน+'-'+วัน+'-'+ปี+' ') /n'); document.write ('result = datepart (' ww ', myDate) /n'); document.write (' /n'); ผลการกลับมา; } //+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ รูปแบบ mm/dd/yyyy mm-dd-yyyy yyyy/mm/dd yyyy-mm-dd - - วันที่ (arys [0],-arys [1], arys [2]); } return myDate; } เพื่อแสดง: วันที่ปัจจุบันบวกเวลา (เช่น: 2009-06-12 12:00) ฟังก์ชั่น currenttime () {var now = new Date (); var year = now.getlyear (); // ปี var เดือน = now.getMonth () + 1; // เดือน var day = now.getDate (); // วัน var hh = now.getHours (); // เวลา var mm = now.getMinutes (); // นาที var นาฬิกา = ปี + "-"; ถ้า (เดือน <10) นาฬิกา += "0"; นาฬิกา + = เดือน + "-"; ถ้า (วัน <10) นาฬิกา += "0"; นาฬิกา + = วัน + ""; ถ้า (hh <10) นาฬิกา += "0"; นาฬิกา + = hh + ":"; ถ้า (mm <10) นาฬิกา += '0'; นาฬิกา += มม.; return (นาฬิกา); -สรุป
ข้างต้นเป็นเนื้อหาเต็มของบทสรุปของการประมวลผลเวลา JavaScript ฉันหวังว่ามันจะเป็นประโยชน์กับทุกคนในอนาคตโดยใช้ JavaScript