# 함수 설명: getToday

이 함수는 오늘 날자의 시작시간을 제공합니다.

## 함수 시그니처

```typescript
function getToday(
  params: { timeZone?: string; format?: 'timestamp' | 'date' | Intl.DateTimeFormatOptions } = {}
): Date | number | string
```

## 매개변수

이 함수는 객체를 매개변수로 받습니다. 이 객체의 필드에 대한 상세한 정보는 다음과 같습니다:

- `timeZone?: string`: 시간을 얻고자 하는 시간대를 나타내는 문자열입니다. 이 값이 주어지지 않으면 사용자의 로컬 시간대가 사용됩니다.

- `format?: 'timestamp' | 'date' | Intl.DateTimeFormatOptions`: 반환하려는 시간의 형식을 결정합니다. 이 값은 다음 세 가지 중 하나일 수 있습니다:
  - `'timestamp'`: 반환 값이 UNIX 타임스탬프 (1970년 1월 1일 00:00:00 UTC로부터의 밀리초)가 됩니다.
  - `'date'`: 반환 값이 Date 객체가 됩니다.
  - `Intl.DateTimeFormatOptions`: 반환 값이 이 옵션에 따라 포맷된 문자열이 됩니다. 이 값이 제공되지 않으면 기본적으로 Date 객체가 반환됩니다.

## 반환 값

이 함수는 `string | number | Date` 형식의 값을 반환합니다. 반환 값의 형식은 `format` 매개변수에 따라 결정됩니다.

## 예제

```typescript
/* get Date() object */
const todayDate = getToday({
  timeZone: 'Asia/Seoul',
  loclae: 'en-CA',
  format: 'date'
})

console.log(todayDate)
```

```typescript
/* text format style */
const relativeDate = getToday({
  relativeDays: 1,
  timeZone: 'Asia/Seoul',
  format: 'YYYY-MM-DD'
})

console.log(relativeDate)
```

```typescript
/* Intl.DateTimeFormat style */
const relativeDate = getToday({
  relativeDays: 1,
  timeZone: 'Asia/Seoul',
  loclae: 'en-CA' /* YYYY-MM-DD format */,
  format: {
    year: 'numeric',
    month: '2-digit',
    day: '2-digit'
  }
})

console.log(relativeDate)
```

이 코드는 오늘의 날짜를 `'Asia/Seoul'` 시간대에서의 Date 객체로 반환합니다.
