前の言葉
日付オブジェクトは、JavaScript言語に組み込みのデータ型であり、日付と時間の操作インターフェイスを提供するために使用されます。日付オブジェクトは、初期のJavaのJava.util.dateクラスに基づいて作成されます。このため、日付タイプは、1970年1月1日の0:00から経過したミリ秒を使用して日付を節約します。それが表すことができる時間範囲は、1970年1月1日の0:00頃にそれぞれ1億日です。この記事では、日付オブジェクトの使用を詳細に紹介します
静的メソッド日付オブジェクトのコンストラクターを導入する前に、最初に静的メソッドを紹介します。日付オブジェクトの静的方法は、そのコンストラクターに密接に関連しているためです。コンストラクターを使用して日付オブジェクトを作成するプロセスは、コートを着た静的な方法を使用するプロセスに似ています
日付オブジェクトには3つの静的メソッドがあります。つまり、date.now()、date.parse()、およびdate.utc()です。これらのメソッドは、日付インスタンスオブジェクトを介してではなく、日付()コンストラクター自体を通じて呼び出されます
date.now()
ecmascript5にはnow()メソッドが追加されました。これは、1970年1月1日に現在の時刻から0:00 UTCにミリ秒数を返します。この方法では、合格パラメーターをサポートしていません。
[注]このメソッドは数値タイプを返します
console.log(date.now()); // 1468297046050Console.log(date.now( '2016,1,1')); // 1468297046050Console.log(typeof date.now());
date.now()メソッドをサポートしていないブラウザでは、 +演算子を使用して日付オブジェクトを数値に変換でき、同様の効果を達成できます。
console.log(new date()); // Tue Jul 12 2016 12:21:33 GMT+0800(China Standard Time)Console.log(+new Date()); // 1468297293433Console.log(+new Date(2000,1,1); // 94934400000000
この方法は、コードを分析するためによく使用されます
var start = date.now(); dosomething(); var stop = date.now(); result = stop- start;
date.parse()
この方法は、日付文字列を解析するために使用されます。パラメーターは解析される日付と時刻を含む文字列で、1970年1月1日の0:00から与えられた日付までミリ秒数を返します
このメソッドは、日付と時刻の文字列形式のルールに従って、文字列の形式を解析します。標準形式に加えて、次の形式もサポートされています。文字列が認識されていない場合、ナンは返されます
1。「月/日/年」、2004年6月13日
2。 '月、日、年' 2004年1月12日または2004年1月12日
3。
[注]ブラウザは、日付を表すのではなく、時間のみを表す文字列形式をサポートしていません。
console.log(date.parse( '6/13/2004')); // 108705600000000000000000000000000000000000000000000000000CONSOLE.LOG(date.Parse( '1月12,2004')); GMT-0700 '); // 1085468400000CONSOLE.LOG(date.Parse(' 2004-05-25T00:00:00 ')); // 1085443200000CONSOLE.LOG(DAT E.Parse( '2016')); // 1451606400000Console.log(date.Parse( 'T00:00:00'));
[注] ECMAScript5では、標準の日付時間文字列形式ルールを使用した文字列に数学の前に0の接頭辞がある場合、UTC時間として解析され、時間が0としてプレフィックスされない場合、現地時間として解析されます。他の状況は一般に現地時間まで解決されます
console.log(date.parse( '7/12/2016')); // 1468252800000Console.log(date.parse( '2016-7-12')); // 1468252800000Console.log(date.parse( '2016-07-12')); // 1468281600000
date.utc()
date.utc()も特定の日付のミリ秒数を返しますが、そのパラメーターは文字列ではなく、それぞれ年、月、日、時間、1分、秒、およびミリ秒を表す数値パラメーターです。
date.utc(年、月、日、時間、時間、秒、ms)、年および月のパラメーターが固定されており、残りのパラメーターはオプションです。日付と時刻形式のルールの詳細については、こちらをご覧ください。
関数には7つの正式なパラメーターがあるため、その長さの値は7です
console.log(date.utc.length); // 7
[注]この方法では、現地時間ではなくUTC時間を使用します
console.log(date.utc(1970)); // nanconsole.log(date.utc(1970,0)); // 0console.log(date.utc(1970,0,2)); // 86400000Console.log(da(da) Te.utc(1970,0,1,1,1)); // 36000000Console.log(date.utc(1970,0,1,1,59)); // 714000Console.log(date.utc(1970,0,1,1,59,30)); // 717000
コンストラクターの日付()コンストラクターには、最大5つの使用方法があります
【0】日付()
数字は、新しいオペレーターなしでは関数のように呼ばれることができます。すべての着信パラメーターを無視し、現在の日付と時刻の文字列表現を返します
日付();
[注]日付()関数は演算子を使用しないため、実際にコンストラクターと呼ぶことはできません
console.log(date()); // "火曜日2016年7月12日13:38:41 GMT+0800(中国標準時間)" Console.log(date( '2016/1/1')); // "Tue Jul 12 2016 13:38:41 GMT+0800(中国標準時間)
【1 date date()関数が新しい演算子を使用し、パラメーターがない場合、日付オブジェクトは現在の時刻と日付に基づいて作成されます
new Date();
console.log(new Date()); // Tue 7ul 2016 13:41:45 GMT+0800(China Standard Time)Console.Log(New Date); // Tue Jul 12 2016 13:41:45 GMT+0800(China Standard Time)Console.log(Typeof()); // 'オブジェクト'オブジェクト ''
【2】日付()関数は、1970年1月1日の設定時間と0時の間のミリ秒数を表す数値パラメーターを受け入れることができます
新しい日付(ミリ秒);
console.log(new Date(0)); // Thu Thu Jan 01 1970 08:00:00 GMT+0800(China Standard Time)Console.log(New Date(86400000)); // Fri Jan 02 1970 08:00:00 GMT+0800(China Standard Time)Console.log(タイプ(0));
【3 date date()関数は文字列パラメーターを受け入れることができ、パラメーター形式はdate.parse()メソッドに似ています。ただし、parse()メソッドは数値を返し、日付()関数はオブジェクトを返します
new Date(dateString); console.log(new Date( '6/13/2004'))); // Sun 2004年6月13日00:00:00:00 GMT+0800(China Standard Starding Time)Console.log.log( '6/13/2004'));日付(2004年6月13日)); // objectConsole.log(typeof date.parse(6/13/2004)); //番号
標準の日付と時刻の文字列でのプレフィックス0の処理は、date.parse()メソッドにも似ています。前の0がある場合、それはUTC時間と同等であり、NOがある場合、現地時間と同等です。残りは通常、現地時間です
console.log(new Date( '7/12/2016')); // Tue 7ul 2016 00:00:00 GMT+0800(China Standard Time)Console.log(new Date( '2016-7-12'));日付( '2016-07-12'))
【4】日付()関数は、日付()メソッドのパラメーターと同様のパラメーターを受け入れることができますが、date.utc()メソッドは多数のミリ秒を返し、UTC時間です。
console.log(new Date(2016,7,12)); // Fri 2016年8月12日00:00:00 gmt+0800(中国標準時間)Console.log(+new Date(2016,7,12));日付(2016,7,12)))
[注] date.parse()関数に似たメソッドを使用する場合、日付オブジェクトが範囲外である場合、ブラウザは日付を範囲内の値に自動的に計算します。 date.utc()関数に似たメソッドを使用する場合、日付オブジェクトが範囲外の場合、ブラウザは無効な日付をプロンプトします
console.log(new Date(2016,7,32)); // Thu Sep 01 2016 00:00:00 GMT+0800(China Standard Time)Console.log(New Date(2016,8,1)); // Thu Sep 01 2016 00:00:00 gmt+0800(中国標準時間)コンソール日付( '2016-8-32')); //無効なdateConsole.log(new Date( '2016-9-1'));
例の方法
日付オブジェクトには、直接読み書きできるプロパティがなく、日付と時間へのすべてのアクセスはメソッドを通過する必要があります。日付オブジェクトのほとんどの方法は2つの形式に分割されます。1つは現地時間を使用することであり、もう1つはUTC時間を使用することです。たとえば、get [utc] day()はgetday()とgetutcday()の両方を表します
日付オブジェクトには46のインスタンスメソッドがあり、次の3つのカテゴリに分けることができます:クラス、クラスを取得し、クラスを設定するには
classクラスへ】
クラスへのメソッドは、指定された時間を示す日付オブジェクトから文字列を返します
toString()
ローカルタイムゾーンの日付文字列を返します
toutcstring()
UTC時間の日付文字列を返します
toisostring()
日付オブジェクトの標準日付時間形式形式の文字列を返します
totimestring()
日付オブジェクトの時間部分を返す文字列を返します
tojson()
JSON形式に準拠する日付文字列を返します。
console.log(new Date( '2016-7-12')。ToString()); // Tue Jul 12 2016 00:00:00 GMT+0800(China Standard Time)Console.Log(New Date( '2016-7-12')。日付( '2016-7-12')。toisosstring()); // 2016-07-11t16:00:00.000zconsole.log(new Date( '2016-7-12')。Todatestring()); // GMT+0800(中国の標準時間)Console.log(new Date( '2016-7-12')。Tojson()); // 2016-07-11T16:00:00.000Z
tolocalestring()
toString()メソッドのローカライズされた変換
tolocaletimestring()
totimestring()メソッドのローカライズされた変換
tolocaledAtestring()
todatestring()メソッドのローカライズされた変換
console.log(new Date( '2016-7-12')。ToString()); // Tue Jul 12 2016 00:00:00 GMT+0800(China Standard Time)Console.log(new Date( '2016-7-12')。日付( '2016-7-12')。Todatestring()); // Tue 7ul 2016console.log(new Date( '2016-7-12')。tolocaledatestring()); // 2016/7/12console.log(new Date( '2016-7-7-12')時間)console.log(new Date( '2016-7-12')。tolocaletimestring()); // 12:00:00 am
【クラスを入手
日付オブジェクトは、インスタンスオブジェクトの特定の側面の値を取得するための一連のGETクラスメソッドを提供します。
GETクラスメソッドを導入する前に、最初にValueof()メソッドを紹介する必要があります
valueof()
1970年1月1日の0:00からミリ秒数を返します
したがって、比較演算子を使用して日付値を比較するのが便利です
var date1 = new date(2007,0,1); var date2 = new Date(2007,1,1); console.log(date1> date2); // falseconsole.log(date1 <date2); // true
getTime()
valueof()と同じ、1970年1月1日の0:00からミリ秒数を返します
ecmascript5の前に、gettime()メソッドを使用してdate.now()を実装できます
date.now = function(){return(new date())。getTime()}gettimezoneoffset()
現在の時間とUTCの間のタイムゾーンの差を返し、数分で表されます(8*60 = 480分)。リターン結果は、夏時間の節約要因を考慮しています。
console.log(new Date( '2016-7-12')。valueof()); // 1468252800000Console.log(new Date( '2016-7-12')
getyear()
1900年から年数を返します(時代遅れ)
[utc] fullyear()を取得します
返品年(4桁)
[utc] month()を取得します
月に戻る(0-11)
[utc] date()を取得します
何日に戻る(1-31)
[utc] day()を取得します
曜日に戻る(0-6)
[utc] hours()を取得します
返品時間値(0-23)
[utc] minutes()を取得します
分値(0-59)を返します
[utc]秒()を取得する
2番目の値(0-59)を返します
get [utc] milliseconds()
ミリ秒値を返す(0-999)
[注] UTC時間は、標準の日付と時刻形式の文字列によって設定され、PRE-0の形式のパラメーター設定を備えています。
console.log(new Date( '2016-07-12t10:00')。getyear()); // 116console.log(new Date( '2016-07-12t10:00')日付( '2016-07-12t10:00')日付( '2016-07-12T10:00')。getDate()); // 12Console.log(new Date( '2016-07-12T10:00:00')。getUtcdate()); // 2Console.log(new Date( '2016-07-12T10:00')日付( '2016-07-12T10:00')。getUtcday()); // 2Console.log(new Date( '2016-07-12t10:00')。gethours()); // 18console.log(new Date( '2016-07-12t10:00')日付( '2016-07-12T10:00')。getminutes()); // 0console.log(new Date( '2016-07-12t10:00')日付( '2016-07-12T10:00')。GetUtCSeConds()); // 0Console.log(new Date( '2016-07-12T10:00')
//現在の時刻は16:35Console.log(new date()。gethours()); // 16console.log(new date()。getutchours()); // 8
【クラスのセット】
日付オブジェクトは、インスタンスオブジェクトのさまざまな側面を設定する一連のセットクラスメソッドを提供します。
SETメソッドは基本的にGETメソッドに対応します。設定されたメソッドは、date.utc()と同様のパラメーターに渡され、調整された日付の内部ミリ秒の数を返します
[注]設定ではなく、1週間だけ入手してください
settime()
ミリ秒形式を使用して、日付オブジェクトの値を設定します
var d = new Date( '2016-07-12t10:00'); Console.log(D.Settime(86400000)、D); // 86400000 1970年1月08:00:00 GMT+0800(中国の標準時間)
setyear()
設定年(時代遅れ)
var d = new Date( '2016-07-12t10:00'); Console.log(D.Setyear(2000)、D、D.Getyear()); // 963396000000 7月12日2000年12月18:00:00 GMT+0800(中国標準時間)100
[utc] fullyear()をset
設定年(4桁)、およびオプションの月と日付の値
[utc] month()を設定します
設定月(0-11)、およびオプションの日付値
[utc] date()set [utc] date
1日を設定する(1-31)
var d = new Date( '2016-07-12t10:00'); Console.log(d.settlear(2015,1,1)、d.getfulterear()); // 1422784800000 2015console.log(d.setmonth(2)、d.getmonth()); // 14252040000000000 2console.log(d.setdate(20)、d.getdate()); // 1426845600000 20Console.log(d.tolocalestring()); // 2015/3/20 6:00:00 pm
[utc] hours()を設定します
設定時間値(0-23)、およびオプションの微小値、2番目の値、およびミリ秒値
[utc] minutes()を設定します
微小値(0-59)、およびオプションの2番目の値とミリ秒値を設定します
[utc]秒()を設定します
2番目の値(0-59)とオプションのミリ秒値を設定します
[utc] milliseconds()をset
ミリ秒値を設定する(0-999)
var d = new Date( '2016-07-12T10:20:30'); console.log(d.sethours(1,2,3)、d.gethours()); // 1468256523000 1console.log(d.setminutes(2,3)、d.getminutes()); // 1468256523000 2console.log(d.setseconds(3)、d.getseconds()); // 1468256523000 3console.log(d.tolocaletimestring())// 1:02:03 am
var d = new Date( '2016-07-12T10:20:30'); console.log(d.setutchours(1,2,3)、d.gethours()); // 1468285323000 9console.log(d.setutcminutes(2,3)、d.getminutes(); // 1468285323000 2console.log(d.setutcseconds(3)、d.getSeconds()); // 1468285323000 3Console.log(d.tolocaletimestring())// 9:02:03 am
JavaScriptタイプシステムに関する上記の記事 - 日付の日付オブジェクトの包括的な理解は、私があなたと共有したすべてのコンテンツです。参照を提供できることを願っています。wulin.comをもっとサポートできることを願っています。