كائنات التاريخ والوقت
1. مقدمة
كائن التاريخ هو كائن يعمل في التاريخ والوقت. لا يمكن إجراء كائن التاريخ في التاريخ والوقت إلا من خلال الأساليب.
2. مُنشئ
2.1 تاريخ جديد (): إرجاع التاريخ والوقت الحاليين
المعلمات: لا شيء
قيمة الإرجاع:
{Date} إرجاع كائن تاريخ يمثل التاريخ والوقت المحليين.
مثال:
نسخة الكود كما يلي:
var dt = new date () ؛
console.log (dt) ؛ // => إرجاع كائن تاريخ يمثل التاريخ والوقت المحليين
2.2 تاريخ جديد (مللي ثانية): تحويل المللي ثانية إلى كائن التاريخ
المعلمة:
milliseconds {int}: milliseconds ؛ يمثل عدد المللي ثانية بدءًا من "1970/01/01 00:00:00" كنقطة انطلاق.
ملاحظة: يجب إضافة الوقت والدقائق والثواني عند نقطة البداية إلى المنطقة الزمنية الحالية. المنطقة الزمنية لوقت بكين هي شرق 8 ، ووقت نقطة البداية الفعلي هو: "1970/01/01 08:00:00"
قيمة الإرجاع:
{التاريخ} إرجاع كائن تاريخ متشابك.
مثال:
نسخة الكود كما يلي:
var dt = تاريخ جديد (1000 * 60 * 1) ؛ // عدد المللي ثانية للتقدم لمدة دقيقة واحدة
console.log (dt) ؛ // => {Date}: 1970/01/01 08:01:00
DT = تاريخ جديد (-1000 * 60 * 1) ؛ // عدد المللي ثانية للعودة 1 دقيقة
console.log (dt) ؛ // => {Date}: 1970/01/01 07:59:00
2.3 تاريخ جديد (دايستور): تحويل السلاسل إلى كائنات التاريخ
المعلمة:
①datestr {string}: سلسلة يمكن تحويلها إلى كائن تاريخ (يمكن حذف الوقت) ؛ هناك تنسيقان رئيسيان من الأوتار:
1) YYYY/MM/DD HH: MM: SS (الموصى به): إذا تم حذف الوقت ، فإن وقت كائن التاريخ الذي تم إرجاعه هو 00:00:00.
2) YYYY-MM-DD HH: MM: SS: إذا تم حذف الوقت ، فإن وقت كائن التاريخ الذي تم إرجاعه هو 08:00:00 (بالإضافة إلى المنطقة الزمنية المحلية). إذا لم يتم حذف الوقت ، فسوف تفشل هذه السلسلة في التحويل في IE!
قيمة الإرجاع:
{Date} إرجاع كائن تاريخ تم تحويله.
مثال:
نسخة الكود كما يلي:
var dt = تاريخ جديد ('2014/12/25') ؛ // yyyy/mm/dd
console.log (dt) ؛ // => {Date}: 2014/12/25 00:00:00
DT = تاريخ جديد ('2014/12/25 12:00:00') ؛ // yyyy/mm/dd hh: mm: ss
console.log (dt) ؛ // => {Date}: 2014/12/25 12:00:00
DT = تاريخ جديد ('2014-12-25') ؛ // yyyy-mm-dd
console.log (dt) ؛ // => {Date}: 2014-12-25 08:00:00 (أضف إلى المنطقة الزمنية لـ East 8)
DT = تاريخ جديد ('2014-12-25 12:00:00') ؛ // yyyym-mm-dd hh: mm: ss (ملاحظة: ستشير طريقة التحويل هذه إلى خطأ في IE!)
console.log (dt) ؛ // => {Date}: 2014-12-25 12:00:00
2.4 تاريخ جديد (السنة ، الشهر ، OPT_DAY ، OPT_HOURS ، OPT_MINUTES ، OPT_SECONDS ، OPT_MILLISECONDS): تحويل السنة والشهر والساعة والدقيقة والثانية إلى كائنات التاريخ
المعلمة:
①year {int}: السنة ؛ 4 أرقام. على سبيل المثال: 1999 ، 2014
②month {int}: شهر ؛ 2 رقم. محسوبة من 0 ، 0 يعني يناير و 11 ديسمبر.
③opt_day {int} اختياري: الرقم ؛ رقم 2 رقمين ؛ ابدأ من 1 ، 1 يمثل الرقم 1.
④opt_hours {int} اختياري: time ؛ رقم 2 رقمين ؛ القيمة 0 ~ 23.
⑤opt_minutes {int} اختياري: نقاط ؛ أرقام من رقمين ؛ القيم 0 ~ 59.
⑥opt_seconds {int} اختياري: ثواني ؛ 2 غير مرقوق. القيم 0 ~ 59.
⑦opt_milliseconds {int} اختياري: milliseconds ؛ القيمة 0 ~ 999.
قيمة الإرجاع:
{Date} إرجاع كائن تاريخ تم تحويله.
مثال:
نسخة الكود كما يلي:
var dt = تاريخ جديد (2014 ، 11) ؛ // ديسمبر 2014 (رقم الشهر الذي تم إدخاله هنا هو 11)
console.log (dt) ؛ // => {Date}: 2014/12/01 00:00:00
DT = تاريخ جديد (2014 ، 11 ، 25) ؛ // 25 ديسمبر 2014
console.log (dt) ؛ // => {Date}: 2014/12/25 00:00:00
DT = تاريخ جديد (2014 ، 11 ، 25 ، 15 ، 30 ، 40) ؛ // 25 ديسمبر 2014 15:30:40
console.log (dt) ؛ // => {Date}: 2014/12/25 15:30:40
DT = تاريخ جديد (2014 ، 12 ، 25) ؛ // 25 ديسمبر 2014 (رقم الشهر الذي تم إدخاله هنا هو 12 ، يشير إلى الشهر الثالث عشر ، القفز إلى يناير من السنة الثانية)
console.log (dt) ؛ // => {Date}: 2015/01/25
3
لا أحد؛ يمكن أن تعمل كائنات التاريخ فقط في التواريخ والأوقات من خلال الأساليب.
4. طريقة مثال
يتم تقسيم طرق مثيل كائن التاريخ بشكل أساسي إلى شكلين: التوقيت المحلي ووقت UTC. لنفس الطريقة ، هناك عمومًا عمليات تنسيق زمنية (اسم الطريقة لديه UTC ، وهو تشغيل وقت UTC). هنا نقدم بشكل أساسي العمليات في التوقيت المحلي.
4.1 احصل على الطريقة
4.1.1 GetLyear (): إرجاع قيمة السنة لكائن التاريخ ؛ 4 بت سنة.
4.1.2 getMonth (): إرجاع قيمة الشهر لكائن التاريخ. بدءا من 0 ، لذلك الشهر الحقيقي = قيمة الإرجاع +1.
4.1.3 getDate (): إرجاع قيمة التاريخ في شهر كائن التاريخ ؛ نطاق القيم هو 1 ~ 31.
4.1.4 gethours (): إرجاع قيمة ساعة كائن التاريخ.
4.1.5 getMinutes (): إرجاع القيمة الدقيقة لكائن التاريخ.
4.1.6 getSeconds (): إرجاع القيمة الثانية لكائن التاريخ.
4.1.7 getMilliseconds (): إرجاع قيمة ميلي ثانية لكائن التاريخ.
4.1.8 GetDay (): إرجاع قيمة الأسبوع لأسبوع كائن التاريخ ؛ 0 هو الأحد ، 1 هو الاثنين ، 2 يوم الثلاثاء ، وهكذا
4.1.9 GetTime (): إرجاع قيمة المللي ثانية بين كائن التاريخ و "1970/01/01 00:00:00" (المنطقة الزمنية لوقت بكين هي East 8 ، ووقت البدء الفعلي هو: "1970/01/01 08:00:00").
مثال:
نسخة الكود كما يلي:
dt.getlyear () ؛ // => 2014: السنة
dt.getmonth () ؛ // => 11: شهر ؛ إنه بالفعل ديسمبر (يتم حساب الشهر من 0)
dt.getDate () ؛ // => 25: اليوم
dt.gethours () ؛ // => 15:
dt.getMinutes () ؛ // => 30: نقاط
dt.getSeconds () ؛ // => 40: ثانية
dt.getmilliseconds () ؛ // => 333: مللي ثانية
dt.getday () ؛ // => 4: قيمة يوم الأسبوع
dt.getTime () ؛ // => 1419492640333: إرجاع قيمة ميلي ثانية بين كائن التاريخ و "1970/01/01 00:00:00 '(المنطقة الزمنية لوقت بكين هي شرق 8 ، ووقت البدء هو في الواقع:' 1970/01/01 08:00:00 ')
4.2 تعيين الطريقة
4.2.1 محدد (السنة ، opt_month ، opt_date): قم بتعيين قيمة العام لكائن التاريخ ؛ 4 بت سنة.
4.2.2 setMonth (الشهر ، opt_date): يحدد قيمة الشهر لكائن التاريخ. 0 يعني يناير ، 11 يعني ديسمبر.
4.2.3 setDate (التاريخ): حدد قيمة التاريخ في شهر كائن التاريخ ؛ نطاق القيمة هو 1 ~ 31.
4.2.4 sethours (ساعة ، opt_min ، opt_sec ، opt_msec): اضبط قيمة ساعة كائن التاريخ.
4.2.5 setMinutes (min ، opt_sec ، opt_msec): يعين القيمة الدقيقة لكائن التاريخ.
4.2.6 SetSeconds (SEC ، OPT_MSEC): قم بتعيين القيمة الثانية لكائن التاريخ.
4.2.7 setMillisEconds (MSEC): اضبط قيمة millisecond لكائن التاريخ.
مثال:
نسخة الكود كما يلي:
var dt = new date () ؛
dt.setlyear (2014) ؛ // => 2014: السنة
dt.setMonth (11) ؛ // => 11: شهر ؛ إنه بالفعل ديسمبر (يتم حساب الشهر من 0)
dt.setdate (25) ؛ // => 25: اليوم
Dt.Sethours (15) ؛ // => 15:
dt.setMinutes (30) ؛ // => 30: نقاط
dt.setseconds (40) ؛ // => 40: ثانية
dt.setmilliseconds (333) ؛ // => 333: مللي ثانية
console.log (dt) ؛ // => 25 ديسمبر 2014 15:30:40 ثانية 333 ميلي ثانية
4.3 طرق أخرى
4.3.1 ToString (): تحويل التاريخ إلى سلسلة "السنة والشهر واليوم والساعة والدقيقة والثانية"
4.3.2 tolocalestring (): تحويل التاريخ إلى سلسلة تنسيق محلية من "السنة والشهر واليوم والساعة والدقيقة والثانية"
4.3.3 TODATESTRING (): تحويل التاريخ إلى سلسلة "السنة والشهر واليوم"
4.3.4 TolocaledateString (): تحويل التاريخ إلى سلسلة تنسيق محلي من "السنة والشهر واليوم"
4.3.5 totimestring (): تحويل التاريخ إلى سلسلة "الوقت والدقيقة والثانية"
4.3.6 tolocaletimestring (): تحويل التاريخ إلى سلسلة تنسيق محلية "الوقت والدقيقة والثانية"
4.3.7 valueof (): مثل GetTime () ، فإنه يعيد قيمة millisecond بين كائن التاريخ و "1970/01/01 00:00:00 '(المنطقة الزمنية لوقت بكين هي East 8 ، ووقت البدء هو في الواقع:' 1970/01/01 08:00:00 ')
مثال:
نسخة الكود كما يلي:
var dt = new date () ؛
console.log (dt.toString ()) ؛ ]
console.log (dt.tolocalestring ()) ؛ // => 23 ديسمبر 2014 في الساعة 10:56:11 مساءً: تحويل التاريخ إلى سلسلة تنسيق محلية من "السنة والشهر واليوم والساعة والدقيقة والثانية"
console.log (dt.todateString ()) ؛ // => الثلاثاء 23 ديسمبر 2014: تحويل التاريخ إلى سلسلة "السنة والشهر واليوم"
console.log (dt.tolocaledateString ()) ؛ // => 23 ديسمبر 2014: تحويل التاريخ إلى سلسلة تنسيق محلي من "السنة والشهر والتاريخ"
console.log (dt.totimestring ()) ؛ // => 22:56:11 GMT+0800 (الصين التوقيت القياسي): تحويل التاريخ إلى سلسلة "ساعة ، دقيقة وثانية"
console.log (dt.tolocaletimestring ()) ؛ // => 10:56:11 مساءً: تحويل التاريخ إلى سلسلة تنسيق محلية "ساعة ، دقيقة ، وثانية"
console.log (dt.valueof ()) ؛ // => إرجاع قيمة millisecond بين كائن التاريخ و "1970/01/01 00:00:00" (المنطقة الزمنية لوقت بكين هي الشرق 8 ، ووقت البدء هو في الواقع: "1970/01/01 08:00:00")
5. طريقة ثابتة
5.1 التاريخ. الآن ()
الوصف: إرجاع قيمة ميلي ثانية بين كائن التاريخ في التاريخ والوقت الحاليين و "1970/01/01 00:00:00" (المنطقة الزمنية لوقت بكين هي الشرق 8 ، ووقت البدء الفعلي هو: "1970/01/01 08:00:00")
المعلمات: لا شيء
قيمة الإرجاع:
{int}: عدد المللي ثانية بين الوقت الحالي ووقت البدء.
مثال:
نسخة الكود كما يلي:
console.log (date.now ()) ؛ // => 1419431519276
5.2 Date.Parse (datester)
الوصف: قم بتحويل السلسلة إلى كائن تاريخ ، ثم أعد قيمة المللي ثانية بين كائن التاريخ و "1970/01/01 00:00:00" (المنطقة الزمنية لوقت بكين هي شرق 8 ، ووقت البدء هو في الواقع: "1970/01/01 08:00:00")
المعلمة:
①datestr {string}: سلسلة يمكن تحويلها إلى كائن تاريخ (يمكن حذف الوقت) ؛ هناك تنسيقان رئيسيان من الأوتار:
1) YYYY/MM/DD HH: MM: SS (الموصى به): إذا تم حذف الوقت ، فإن وقت كائن التاريخ الذي تم إرجاعه هو 00:00:00.
2) YYYY-MM-DD HH: MM: SS: إذا تم حذف الوقت ، فإن وقت كائن التاريخ الذي تم إرجاعه هو 08:00:00 (بالإضافة إلى المنطقة الزمنية المحلية). إذا لم يتم حذف الوقت ، فإن هذه السلسلة تُرجع NAN (غير الرقم) في IE!
قيمة الإرجاع:
{int} إرجاع عدد المللي ثانية بين كائن التاريخ المحول ووقت البدء.
مثال:
نسخة الكود كما يلي:
console.log (date.parse ('2014/12/25 12:00:00')) ؛ // => 1419480000000
console.log (date.parse ('2014-12-25 12:00:00')) ؛ // => 1419480000000 (ملاحظة: هذه طريقة التحويل تُرجع NAN في IE!)
6. العملية العملية
6.1 قم بتحويل نوع DateTime من C# إلى كائن تاريخ JS
ملاحظة: يعد التنسيق الذي تم إرجاعه إلى المقدمة من خلال تسلسل JSON هو "// Date (1419492640000) //". يمثل الرقم في الوسط عدد المللي ثانية بين قيمة DateTime ووقت البدء.
مثال:
رمز الخلفية: ASHX بسيط
نسخة الكود كما يلي:
Public Void ProcessRequest (سياق httpcontext) {
System.Web.script.serialization.javascriptserializer
DateTime dt = dateTime.parse ("2014-12-25 15:30:40") ؛
سلسلة RS = JS.Serialize (DT) ؛ // التسلسل إلى JSON
context.Response.contentType = "text/plain" ؛
context.Response.write (rs) ؛
}
رمز مكتب الاستقبال:
نسخة الكود كما يلي:
var dateTimeJsonstr = '// Date (1419492640000) //' ؛ // C# JSON Format لتحويل نوع DATETIM
var msecstr = dateTimeJsonstr.ToString (). استبدال (/// Date/(([-]؟/d+)/) /// gi ، "$ 1") ؛ // => '1419492640000': احصل على سلسلة millisecond عن طريق الاستبدال العادي
var msesint = number.parseint (msecStR) ؛ // تحويل سلسلة ميلي ثانية إلى قيمة رقمية
var dt = تاريخ جديد (msesint) ؛ // تهيئة كائن التاريخ
console.log (dt.tolocalestring ()) ؛ // => 25 ديسمبر 2014 في 3:30:40 مساءً
6.2 احصل على العد التنازلي
الوصف: احسب عدد الأيام والفرق الزمني بين الوقت الحالي والوقت المستهدف.
مثال:
نسخة الكود كما يلي:
/**
* العودة إلى العد التنازلي
* param dt {date}: كائن تاريخ الوجهة
* return {strin}: العد التنازلي الإرجاع: X Days X Hours
*/
وظيفة getDownTime (dt) {
// 1. احصل على العد التنازلي
var intervalmsec = dt - date.now () ؛ // قم بطرح الوقت الحالي للحصول على عدد ميلي ثانية من الفرق بين الاثنين
var striseSec = intervalmsec / 1000 ؛ // تحويل إلى ثوان
var day = parseint (فترات / 3600 /24) ؛ // عدد الأيام
var hour = parseint ((فترات - اليوم * 24 * 3600) / 3600) ؛ // ساعات
var min = parseint ((فترات - اليوم * 24 * 3600 - ساعة * 3600) / 60) ؛ // دقائق
// 2. إذا كانت المللي ثانية من الفرق أقل من 0 ، فهذا يعني أن وقت الوجهة أقل من الوقت الحالي. القيم المتخذة في هذا الوقت كلها سلبية: -x أيام في الدقيقة. عند عرضه ، ما عليك سوى عرض السلبي قبل عدد الأيام.
if (interalmsec <0) {
ساعة = 0 - ساعة ؛
دقيقة = 0 - دقيقة ؛
}
// 3. لصق السلسلة والعودة
var rs = day + 'Day' + Hour + 'Hour' + min + 'Minute' ؛
إرجاع روبية ؛
}
// الوقت الحالي: 2014/12/28 13:26
console.log (getDownTime (تاريخ جديد ('2015/06/01')))) ؛ // => 154 يومًا 10:33
console.log (getDownTime (تاريخ جديد ('2014/01/01')))) ؛ // => -361 يومًا 13:26
6.3 مقارنة بحجم كائنات التاريخ 2
ملاحظة: يمكنك مقارنة المللي ثانية من الاثنين ووقت البدء لتمييز الحجم.
مثال:
نسخة الكود كما يلي:
var dt1 = تاريخ جديد ('2015/12/01') ؛
var dt2 = تاريخ جديد ('2015/12/25') ؛
console.log (dt1> dt2) ؛ // => خطأ