📅
[TypeScript]与えられた日時に対応する会計年度の開始日時を返す関数
/**
* 与えられたJST基準の日付に対応する会計年度の開始日時(4月1日 00:00:00 JST)を返す。
* 実行環境のタイムゾーンに関係なく、JSTとして扱う。
*
* @param date 日本時間として指定されたDateオブジェクト
* @returns 会計年度開始日時(JST基準)
*/
export const getFiscalYearStartDate = (date: Date): Date => {
const JST_OFFSET_MS = 9 * 60 * 60 * 1000;
const jstDate = new Date(date.getTime() + JST_OFFSET_MS);
const year = jstDate.getUTCMonth() + 1 <= 3
? jstDate.getUTCFullYear() - 1
: jstDate.getUTCFullYear();
// JSTの4月1日 00:00:00 をISO8601で生成
return new Date(`${year}-04-01T00:00:00+09:00`);
};
Discussion