Web 開発では、日付形式の変換を含む日付処理が必要になることがよくあります。 JavaScript では、組み込みの Date オブジェクトといくつかのメソッドを使用して日付を変換できます。
日付オブジェクトを作成するには、パラメーターの有無にかかわらず、Date() コンストラクターを使用できます。パラメータを指定しない場合は、現在の日付と時刻が自動的に取得されます。
var date = new Date(); //获取当前日期和时间
日付と時刻を指定する日付オブジェクトを作成する場合は、年、月、日、時、分、秒などのパラメーターを渡すことができます。
var date = new Date(2022, 0, 1, 12, 0, 0); //创建2022年1月1日12:00:00的日期对象
このうち、月は 0 から数えるので、0 は 1 月、1 は 2 月などを表します。時間は 24 時間形式です。
JavaScript には日付形式を変換するためのメソッドが複数用意されています。以下で個別に紹介します。
(1) 日付オブジェクトを文字列に変換する
Date オブジェクトの toString() メソッドを呼び出すことで、日付オブジェクトを文字列に変換できます。
var date = new Date(); console.log(date.toString());
出力結果は次のとおりです。
Tue Oct 19 2021 17:22:48 GMT+0800 (中国标准时间)
(2) 日付オブジェクトをタイムスタンプに変換します
タイムスタンプは、1970 年 1 月 1 日 00:00:00 UTC 以降を指します。それからの秒数。 Date オブジェクトの getTime() メソッドを呼び出すことで、日付オブジェクトのタイムスタンプを取得できます。
var date = new Date(); console.log(date.getTime());
出力結果は以下のとおりです。
1634640291737
(3) タイムスタンプを日付オブジェクトに変換します。
Date オブジェクトのコンストラクターを呼び出して、タイムスタンプパラメータ 日付オブジェクト。
var timestamp = 1634640291737; var date = new Date(timestamp); console.log(date.toString());
出力結果は以下のとおりです。
Tue Oct 19 2021 17:24:51 GMT+0800 (中国标准时间)
(4) 日付オブジェクトを指定形式の文字列に変換します
日付オブジェクトを指定形式の文字列に変換するにはgetFull Year()、getMonth()、getDate()、getHours()、getMinutes()、getSeconds() などの Date オブジェクトの他のメソッドを使用して、年、月、日を取得できます。日付オブジェクトの時、分、秒情報を待ってから、文字列連結を使用して要件を満たす文字列を構築します。
たとえば、日付オブジェクトを「yyyy-MM-dd hh:mm:ss」の形式にフォーマットするには、次のコードを使用できます。
function formatDate(date) { var year = date.getFullYear(), month = date.getMonth() + 1, day = date.getDate(), hour = date.getHours(), minute = date.getMinutes(), second = date.getSeconds(); return year + "-" + formatNumber(month) + "-" + formatNumber(day) + " " + formatNumber(hour) + ":" + formatNumber(minute) + ":" + formatNumber(second); } function formatNumber(number) { return number < 10 ? "0" + number : number; } var date = new Date(); console.log(formatDate(date));
出力結果は次のようになります。
2021-10-19 17:31:51
JavaScript では、日付オブジェクトを加算および減算することができます。たとえば、次のメソッドを使用して日数の差を計算できます。 2 つの日付オブジェクトの間。
function dateDiffInDays(date1, date2) { var timeDiff = date2.getTime() - date1.getTime(); var dayDiff = timeDiff / (1000 * 3600 * 24); return Math.floor(dayDiff); } var date1 = new Date(2021, 0, 1); var date2 = new Date(2021, 9, 19); console.log(dateDiffInDays(date1, date2));
出力結果は次のとおりです:
291
JavaScript では、Date オブジェクトを使用して日付とその形式変換を処理できます。日付オブジェクトを作成するには、Date() コンストラクターを使用します。日付オブジェクトを文字列に変換するには、toString() メソッドを使用できます。日付オブジェクトをタイムスタンプに変換するには、getTime() メソッドを使用できます。タイムスタンプを日付オブジェクトに変換するには、Date() コンストラクターを使用してタイムスタンプ パラメーターを渡すことができます。日付オブジェクトを指定した形式の文字列にフォーマットするには、他のメソッドを使用して日付オブジェクトの年、月、日、時、分、秒などの情報を取得し、文字列の連結を使用して次のような文字列を構築します。要件を満たしています。日付オブジェクトは加算および減算することもできます。
以上がJavaScriptで日付を変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。