narou
Version:
Narou API Wrapper
38 lines (34 loc) • 1.21 kB
text/typescript
// 日付関連のユーティリティ関数
/**
* 文字列の日付(yyyyMMdd形式)をDateオブジェクトに変換する
* @param dateStr yyyyMMdd形式の日付文字列
* @returns Dateオブジェクト
*/
export function parseDate(dateStr: string): Date {
const year = parseInt(dateStr.substring(0, 4), 10);
const month = parseInt(dateStr.substring(4, 6), 10) - 1; // JavaScriptの月は0から始まる
const day = parseInt(dateStr.substring(6, 8), 10);
return new Date(year, month, day, 0, 0, 0, 0);
}
/**
* 日付をyyyyMMdd形式の文字列に変換する
* @param date 日付
* @returns yyyyMMdd形式の文字列
*/
export function formatDate(date: Date): string {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
return `${year}${month}${day}`;
}
/**
* 指定された日数を加算した新しい日付を返す
* @param date 元の日付
* @param days 加算する日数
* @returns 新しい日付
*/
export function addDays(date: Date, days: number): Date {
const result = new Date(date);
result.setDate(result.getDate() + days);
return result;
}