JavaScriptで昨日の日付を取得する方法【setDate()の使い方を解説】
JavaScriptで昨日の日付を取得したい場合は、現在の日付を取得してから1日分引いた値をsetDate()メソッドに設定するのが基本的な方法です。Dateオブジェクトが持つgetDate()メソッドとsetDate()メソッドを組み合わせることで、簡単に昨日の日付を求めることができます。
基本の構文
昨日の日付を取得するための構文は以下の通りです。
yourCurrentDateVariableName.setDate(yourCurrentDateVariableName.getDate() - 1);
このコードでは、getDate()メソッドで「日」にあたる数値を取得し、そこから1を引いた値をsetDate()メソッドで同じDateオブジェクトに再設定しています。月末や年をまたぐ場合(例:7月1日の前日、1月1日の前日)でも、Dateオブジェクトが自動的に正しい日付を計算してくれるため、特別な処理は不要です。
手順1:現在の日付を取得する
まず、new Date()で現在の日付を取得します。
var currentDate = new Date();
手順2:昨日の日付を計算する
続いて、以下のコードで昨日の日付を求めます。
コード例
var currentDate = new Date();
console.log("The current date=" + currentDate);
var yesterdayDate = currentDate.setDate(currentDate.getDate() - 1);
console.log("The yesterday date =" + new Date(yesterdayDate));なお、setDate()メソッドの戻り値はミリ秒単位のタイムスタンプであるため、console.log()で表示する際にはnew Date()で囲んでDateオブジェクトに変換しています。
プログラムの実行方法
上記のプログラムを実行するには、Node.js環境で次のコマンドを使用します。
node fileName.js
実行結果
ここでは、ファイル名をdemo137.jsとしています。実行すると、以下のような出力が得られます。
PS C:\Users\Amit\JavaScript-code> node demo137.js The current date=Fri Jul 31 2020 18:57:17 GMT+0530 (India Standard Time) The yesterday date =Thu Jul 30 2020 18:57:17 GMT+0530 (India Standard Time)
このように、現在の日付が2020年7月31日(金)だった場合、その1日前である2020年7月30日(木)が正しく出力されていることが確認できます。このテクニックを使えば、「n日前の日付」もgetDate()から引く数値を変更するだけで簡単に取得可能です。
-
JavaScriptで現在の時刻を別のタイムゾーンの時刻に変更して表示する方法
JavaScriptのDateオブジェクトは、端末(システム)に設定されている時刻をそのまま取得して現在の日付・時刻を表示します。そのため、JavaScript単体でシステム時刻そのものを書き換えることはできません。 しかし、UTC(協定世界時)との時差であるタイムゾーンオフセットを計算に組み込むことで、あたかも別の時刻が設定されたかのように表示することが可能です。以下では、シンガポール(GMT+8)の時刻を求めるサンプルコードを紹介します。 サンプルコード <!DOCTYPE html> <html> <body>
-
JavaScriptでCSSプロパティの現在の値を取得する方法|getComputedStyleの使い方
JavaScriptでHTML要素に適用されているCSSプロパティの現在の値(計算済みスタイル)を取得するには、window.getComputedStyle()メソッドを使用します。このメソッドは、対象の要素に適用されたすべてのスタイル情報を含むオブジェクトを返します。返されたオブジェクトに対してgetPropertyValue()メソッドを呼び出せば、任意のCSSプロパティの値を文字列として取得できます。インラインスタイルが設定されていない場合でも、外部CSSや継承によって最終的に適用されている値を取得できるのが大きな特徴です。基本構文const element = document.qu