日付と時刻のオブジェクト
1。はじめに
日付オブジェクトは、日付と時刻に動作するオブジェクトです。日付と時刻の日付オブジェクトの操作は、メソッドを使用してのみ実行できます。
2。コンストラクター
2.1 new Date():現在のローカルの日付と時刻を返します
パラメーター:なし
返品値:
{日付}ローカルの日付と時刻を表す日付オブジェクトを返します。
例:
コードコピーは次のとおりです。
var dt = new date();
console.log(dt); // =>ローカルの日付と時刻を表す日付オブジェクトを返します
2.2新しい日付(ミリ秒):ミリ秒を日付オブジェクトに変換します
パラメーター:
milliseconds {int}:milliseconds; 「1970/01/01 00:00:00:00」から始まる点として始まるミリ秒数を表します。
注:開始点での時間、分、秒を現在のタイムゾーンに追加する必要があります。北京時間のタイムゾーンは東8で、実際の出発点は次のとおりです。 '1970/01/01 08:00:00'
返品値:
{日付}オーバーレイ日付オブジェクトを返します。
例:
コードコピーは次のとおりです。
var dt = new Date(1000 * 60 * 1); // 1分ずつ進むためのミリ秒の数
console.log(dt); // => {日付}:1970/01/01 08:01:00
dt = new Date(-1000 * 60 * 1); // 1分間戻るためのミリ秒数
console.log(dt); // => {日付}:1970/01/01 07:59:00
2.3新しい日付(datestr):文字列を日付オブジェクトに変換します
パラメーター:
①datestr{string}:日付オブジェクトに変換できる文字列(時間は省略できます)。文字列には2つの主要な形式があります。
1)yyyy/mm/dd hh:mm:ss(推奨):時間が省略されている場合、返された日付オブジェクトの時間は00:00:00です。
2)yyyy-mm-dd hh:mm:ss:時間が省略されている場合、返された日付オブジェクトの時間は08:00:00(プラスローカルタイムゾーン)です。時間が省略されていない場合、この文字列はIEで変換できません!
返品値:
{日付}変換された日付オブジェクトを返します。
例:
コードコピーは次のとおりです。
var dt = new Date( '2014/12/25'); // yyyy/mm/dd
console.log(dt); // => {日付}:2014/12/25 00:00:00
dt = new Date( '2014/12/25 12:00:00'); // yyyy/mm/dd hh:mm:ss
console.log(dt); // => {日付}:2014/12/25 12:00:00
dt = new Date( '2014-12-25'); // yyyy-mm-dd
console.log(dt); // => {日付}:2014-12-25 08:00:00(東8のタイムゾーンに追加)
dt = new Date( '2014-12-25 12:00:00'); // yyyy-mm-dd hh:mm:ss(注:この変換方法はIEでエラーを報告します!)
console.log(dt); // => {日付}:2014-12-25 12:00:00
2.4新しい日付(年、月、opt_day、opt_hours、opt_minutes、opt_seconds、opt_milliseconds):年、月、日、時間、秒、秒に変換
パラメーター:
①year{int}:year; 4桁。例:1999、2014
month {int}:月; 2桁。 0から計算されたのは、1月と11月の12月を意味します。
③pt_day{int} optional:number; 2桁の番号; 1からの開始は、1を表します。
④pt_hours{int} optional:time; 2桁の番号;値0〜23。
⑤pt_minutes{int} optional:points; 2桁の数字。値0〜59。
opt_seconds {int}オプション:秒; 2番号なし;値0〜59。
opt_milliseconds {int}オプション:milliseconds;値0〜999。
返品値:
{日付}変換された日付オブジェクトを返します。
例:
コードコピーは次のとおりです。
var dt = new Date(2014、11); // 2014年12月(ここに入力された月数は11です)
console.log(dt); // => {日付}:2014/12/01 00:00:00
dt = new Date(2014、11、25); // 2014年12月25日
console.log(dt); // => {日付}:2014/12/25 00:00:00
dt = new Date(2014、11、25、15、30、40); // 2014年12月25日15:30:40
console.log(dt); // => {日付}:2014/12/25 15:30:40
dt = new Date(2014、12、25); // 2014年12月25日(ここに入力された月数は12で、13か月目を示し、2年目の1月にジャンプします)
console.log(dt); // => {日付}:2015/01/25
3。プロパティ
なし;日付オブジェクトは、メソッドを通じて日付と時間のみで動作できます。
4。例メソッド
日付オブジェクトのインスタンスメソッドは、主に現地時間とUTC時間の2つの形式に分割されます。同じ方法では、通常、2つのタイム形式操作があります(メソッド名にはUTCがあり、UTC時間を操作します)。ここでは、主に現地時間に操作を紹介します。
4.1メソッドを取得します
4.1.1 getFlightear():日付オブジェクトの年値を返します。 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():日付オブジェクトの2番目の値を返します。
4.1.7 getMilliseConds():日付オブジェクトのミリ秒値を返します。
4.1.8 getDay():日付オブジェクトの週の週の値を返します。 0は日曜日、1は月曜日、2は火曜日、その他
4.1.9 getTime():日付オブジェクトと '1970/01/01 00:00:00'の間のミリ秒値を返します(北京時間のタイムゾーンは東8で、実際の開始時間は '1970/01/01 08:00:00')です。
例:
コードコピーは次のとおりです。
dt.GetThyEar(); // => 2014:年
dt.getmonth(); // => 11:月;実際には12月です(月は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'の間のミリ秒値を返します(北京時間のタイムゾーンはEast 8で、実際には: '1970/01/01 08:00:00:00')
4.2セットメソッド
4.2.1 SetFullyear(year、opt_month、opt_date):日付オブジェクトの年値を設定します。 4ビット年。
4.2.2 SetMonth(Month、opt_date):日付オブジェクトの月値を設定します。 0は1月を意味し、11は12月を意味します。
4.2.3 SetDate(日付):日付オブジェクトの月に日付値を設定します。値範囲は1〜31です。
4.2.4 sethours(hour、opt_min、opt_sec、opt_msec):日付オブジェクトの時間値を設定します。
4.2.5 SetMinutes(MIN、OPT_SEC、OPT_MSEC):日付オブジェクトの微小値を設定します。
4.2.6 SetSeconds(SEC、OPT_MSEC):日付オブジェクトの2番目の値を設定します。
4.2.7 SetMilliseConds(MSEC):日付オブジェクトのミリ秒値を設定します。
例:
コードコピーは次のとおりです。
var dt = new date();
dt.setclowear(2014); // => 2014:年
dt.setmonth(11); // => 11:月;実際には12月です(月は0から計算されます)
dt.setdate(25); // => 25:日
dt.sethours(15); // => 15:
dt.setminutes(30); // => 30:ポイント
dt.setseconds(40); // => 40:秒
dt.setmilliseconds(333); // => 333:ミリ秒
console.log(dt); // => 2014年12月25日15:30:40秒333ミリ秒
4.3その他の方法
4.3.1 toString():日付を年、月、日、時間、分、2番目の文字列に変換する
4.3.2 tolocalestring():日付を「年、月、日、時間、分、2番目のローカル形式の文字列に変換する」
4.3.3 todatestring():日付を「年、月、日」文字列に変換する
4.3.4 tolocaledAtestring():日付を「年、月、日」のローカル形式の文字列に変換する
4.3.5 totimestring():日付を「時間、分、2番目の文字列に変換する
4.3.6 tolocaletimestring():日付を「時間、分、2番目のローカルフォーマット文字列に変換する
4.3.7 valueof():gettime()のように、日付オブジェクトと '1970/01/01 00:00:00'の間のミリ秒値を返します(北京時間のタイムゾーンは東8で、実際には: '1970/01/01 08:00:00:00')
例:
コードコピーは次のとおりです。
var dt = new date();
console.log(dt.toString()); // => 2014年12月23日22:56:11 GMT+0800(中国の標準時間):日付を年、月、日、時間、分、2番目の文字列に変換
console.log(dt.tolocalestring()); // => 2014年12月23日午後10時56:11:日付を「年、月、日、時間、分、2番目のローカル形式の文字列に変換する」
console.log(dt.todatestring()); // => 2014年12月23日:日付を「年、月、日」文字列に変換する
console.log(dt.tolocaledatestring()); // => 2014年12月23日:日付を「年、月、日付」のローカル形式の文字列に変換する
console.log(dt.totimestring()); // => 22:56:11 GMT+0800(中国の標準時間):日付を「時間、分、2番目の文字列に変換する
console.log(dt.tolocaletimestring()); // => 10:56:11 PM:日付を「時間、分、2番目のローカルフォーマット文字列」に変換
console.log(dt.valueof()); // =>日付オブジェクトと '1970/01/01 00:00:00'の間のミリ秒値を返します(北京時間のタイムゾーンは東8で、開始時間は実際には次のとおりです。
5。静的メソッド
5.1 date.now()
説明:現在の日付と時刻の日付オブジェクトと '1970/01/01 00:00:00'(北京時間のタイムゾーンは東8で、実際の開始時間は次のとおりです。 '1970/01/01 08:00:00')
パラメーター:なし
返品値:
{int}:現在の時刻と開始時間の間のミリ秒数。
例:
コードコピーは次のとおりです。
console.log(date.now()); // => 1419431519276
5.2 date.parse(datestr)
説明:文字列を日付オブジェクトに変換し、この日付オブジェクトと '1970/01/01 00:00:00'の間のミリ秒値を返します(北京時間のタイムゾーンは東8で、実際には次のとおりです。
パラメーター:
①datestr{string}:日付オブジェクトに変換できる文字列(時間は省略できます)。文字列には2つの主要な形式があります。
1)yyyy/mm/dd hh:mm:ss(推奨):時間が省略されている場合、返された日付オブジェクトの時間は00:00:00です。
2)yyyy-mm-dd hh:mm:ss:時間が省略されている場合、返された日付オブジェクトの時間は08:00:00(プラスローカルタイムゾーン)です。時間が省略されていない場合、この文字列はIEでnan(非番号)を返します!
返品値:
{int}変換された日付オブジェクトと開始時間の間のミリ秒数を返します。
例:
コードコピーは次のとおりです。
console.log(date.parse( '2014/12/25 12:00:00')); // => 1419480000000
console.log(date.parse( '2014-12-25 12:00:00')); // => 1419480000000(注:この変換方法はIEでNANを返します!)
6。実践的な操作
6.1 C#のデータタイプタイプをJSの日付オブジェクトに変換します
注:JSONシリアル化を介して前景に返される形式は「//日付(1419492640000)//」です。中央の数は、DateTimeの値と開始時間の間のミリ秒の数を表します。
例:
背景コード:シンプルなashx
コードコピーは次のとおりです。
public void processRequest(httpcontextコンテキスト){
System.web.script.serialization.javascriptserializer js = new 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形式のDateTimeタイプ変換のための形式
var msecstr = dateTimejsonstr.toString()。置換(///日付/(([ - ]?/d+)/)/// gi、 "$ 1"); // => '1419492640000':定期的な交換でミリ秒文字列を取得します
var msesint = number.parseint(msecstr); //ミリ秒文字列を数値に変換します
var dt = new Date(msesint); //日付オブジェクトを初期化します
console.log(dt.tolocalestring()); // => 2014年12月25日午後3時30分40分
6.2カウントダウンを取得します
説明:現在の時間と目標時間の間の時間と時間差を計算します。
例:
コードコピーは次のとおりです。
/**
*カウントダウンに戻ります
* @param dt {date}:宛先日付オブジェクト
* @return {strin}:return countdown:x日x時間x分
*/
関数GetDownTime(DT){
// 1。カウントダウンを取得します
var intervalmsec = dt -date.now(); //現在の時間を差し引いて、2つの間の違いのミリ秒数を取得します
var intervalsec = intervalmsec / 1000; //秒に変換します
var day = parseint(intervalsec / 3600 /24); //日数
var hour = parseint((intervalsec -day * 24 * 3600) / 3600); //時間
var min = parseint((intervalsec -day * 24 * 3600 -hour * 3600) / 60); // 分
// 2。差のミリ秒が0未満の場合、宛先時間が現在の時刻よりも短いことを意味します。この時点で取得された値はすべてマイナスです:-X日間分。表示されたら、日数の前にネガティブなものを表示するだけです。
if(intervalmsec <0){
hour = 0 -hour;
min = 0 -min;
}
//3。文字列をスプライスして返します
var rs = day + 'day' + hour + 'hour' + min + 'minute';
Rsを返します。
}
//現在の時刻:2014/12/28 13:26
console.log(getDownTime(new Date( '2015/06/01'))); // => 154日10:33
console.log(getDownTime(new Date( '2014/01/01'))); // => -361日13:26
6.3 2つの日付オブジェクトのサイズの比較
注:2つのミリ秒数と、サイズを区別する開始時間を比較できます。
例:
コードコピーは次のとおりです。
var dt1 = new Date( '2015/12/01');
var dt2 = new Date( '2015/12/25');
console.log(dt1> dt2); // => false