Jsで現在時刻を文字列の形で取得
Javascriptで現在日時の取得は
new Date()
を使ってDate型で取得できます。これを文字列にして取得したい場合、年、月、日を分解して連結します。
JavascriptにはDate型を文字列に整形するメソッドはデフォルトで用意されていないようなので、独自に実装する必要があります。
現在時刻をyyyymmddのフォーマットで取得する関数例は下記です。
function getNowYMDStr(){ const date = new Date() const Y = date.getFullYear() const M = ("00" + (date.getMonth()+1)).slice(-2) const D = ("00" + date.getDate()).slice(-2) return Y + M + D }
これで20181201のように文字列で取得できます。
頭に”00″をつけてslice(-2)とすることで、2桁に整形して連結します。getMonth()+1としているのは、JavascriptではgetMonth()で取得できる月が1ズレるためです。
sliceについては下記を参照。
Array.prototype.slice() - JavaScript | MDN
slice() は Array インスタンスのメソッドで、配列の一部を start から end (end は含まれない)までの範囲で、選択した新しい配列オブジェクトにシャローコピーして返します。 ここで start と end はその配列...
時間、分、秒まで文字列で取得したい場合
また、時間、分、秒まで取得したい場合は下記のように追記します。
function getNowYMDhmsStr(){ const date = new Date() const Y = date.getFullYear() const M = ("00" + (date.getMonth()+1)).slice(-2) const D = ("00" + date.getDate()).slice(-2) const h = ("00" + date.getHours()).slice(-2) const m = ("00" + date.getMinutes()).slice(-2) const s = ("00" + date.getSeconds()).slice(-2) return Y + M + D + h + m + s }
これで20181201154512のように秒まで取得できます。
それぞれの単位で区切りを入れたい場合は、下のように連結部分のコードで好きなセパレータを挟んでください。
return Y + '/' + M + '/' + D
これで2018/12/01のように取得できます。
コメント