Skip to content
Day.js

한국어

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
Italiano
Polski
Türkçe
čeština
magyar

한국어

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
Italiano
Polski
Türkçe
čeština
magyar

외관

Sidebar Navigation

설치

Node.js

브라우저

TypeScript

다운로드

파싱

Now

String

문자열 + 형식

Unix 타임스탬프(밀리초)

Unix 타임스탬프 (초)

날짜

객체

배열

UTC

Day.js 복사

유효성 검사

Get + Set

밀리초

초

분

시간

월의 일자

요일

요일 (로케일 인식)

ISO 요일

연중 일자

연중 주차

ISO 주차

월

분기 (Quarter)

연도

주차 연도

ISO 주차 연도

연도 내 주 수 (ISO 기준)

Get

Set

최대값

최소 시점

변경

추가 (Add)

시간 빼기

시간의 시작

시간 단위의 끝

Local

UTC

UTC 오프셋

표현

포맷

현재로부터의 시간

X부터의 시간

현재로부터 시간

X에 대한 상대 시간

Calendar Time

차이

유닉스 타임스탬프 (밀리초)

Unix Timestamp

이번 달 날짜 수

JavaScript Date 객체로

배열 반환

JSON 형식으로

ISO 8601 형식으로

객체

문자열

질의

Is Before

동일 여부 확인

Is After

동일하거나 이전인지 여부

동일하거나 이후인지 여부

Is Between

Day.js 객체인지 확인

윤년 확인

i18n

NodeJS에서 로케일 불러오기

브라우저에서 로케일 불러오기

전역 로케일 변경

로컬 로케일 설정

Day.js 현재 로케일 확인

현재 로케일의 월과 요일 목록

로캘별 기능 접근

플러그인

NodeJS에서 플러그인 불러오기

브라우저에서 플러그인 로딩하기

AdvancedFormat

ArraySupport

BadMutable

BigInt 지원 기능

BuddhistEra

달력

CustomParseFormat

DayOfYear

DevHelper

기간

IsBetween

IsLeapYear

IsSameOrAfter

IsSameOrBefore

IsToday

IsTomorrow

IsYesterday

IsoWeek

IsoWeeksInYear

LocaleData

LocalizedFormat

MinMax

ObjectSupport

PluralGetSet

PreParsePostFormat

QuarterOfYear

상대 시간

시간대

ToArray

ToObject

UpdateLocale

UTC

weekOfYear

WeekYear

요일

사용자 정의

월 이름

월 축약형

주 이름

요일 약어

최소 요일 약어

상대 시간

달력

기간

생성

복제

Humanize

포맷

밀리초

초

분(Minutes)

시간 (Hours)

일

주

월

연도

시간 더하기

시간 차감

Duration을 Diff와 함께 사용하기

시간 단위

시간 단위 얻기

JSON 형식으로

Duration 여부 확인

ISO 8601 형식으로

Locale

시간대

시간대별 파싱

시간대 변환

사용자 시간대 추정

기본 시간대 지정

이 페이지에서

상대 시간 ​

Locale#relativeTime은 dayjs#from 메서드에서 사용할 대체 문자열을 정의하는 객체입니다.

TIP

이 기능을 사용하려면 UpdateLocale 플러그인이 필요합니다.

js
dayjs.extend(updateLocale);

dayjs.updateLocale('en', {
  relativeTime: {
    future: '%s 후',
    past: '%s 전',
    s: '몇 초',
    m: '1분',
    mm: '%d분',
    h: '한 시간',
    hh: '%d시간',
    d: '하루',
    dd: '%d일',
    M: '한 달',
    MM: '%d개월',
    y: '1년',
    yy: '%d년',
  },
});

Locale#relativeTime.future는 미래 시점을 나타낼 때 사용되며, Locale#relativeTime.past는 과거 시점을 나타낼 때 사용됩니다.

나머지 키의 경우, 단일 문자는 단수형을, 이중 문자는 복수형을 나타냅니다.

추가 토큰 처리 ​

로케일에서 특정 토큰에 대해 추가적인 처리가 필요한 경우, 문자열 대신 다음과 같은 서명을 가진 함수를 토큰 값으로 설정할 수 있습니다. 이 함수는 문자열을 반환해야 합니다.

js
relativeTime: {
  ...,
  yy: function (number, withoutSuffix, key, isFuture) {
    return string;
  }
}

number 인수는 해당 키에 대한 시간 단위를 나타냅니다. 예를 들어 m의 경우 분을 나타냅니다.

withoutSuffix 인수는 접미사 없이 표시되는 경우 true, 접미사와 함께 표시되는 경우 false입니다. (기본 동작이 접미사와 함께 표시되므로 논리가 반전되어 있습니다.)

key 인수는 Locale#relativeTime 객체 내에서 사용되는 대체 키를 나타냅니다. (예: s, m, mm, h 등)

isFuture 인수는 미래 시점을 나타내는 경우 true, 과거 시점을 나타내는 경우 false입니다.

상대 시간 임계값 및 반올림 ​

이 플러그인을 사용할 때 구성 객체를 전달하여 임계값 및 반올림 설정을 변경할 수 있습니다.

js
var config = {
  thresholds: [{}],
  rounding: function () {
    return Math.round(arguments[0]);
  },
};
dayjs.extend(relativeTime, config);

thresholds는 특정 시간 단위(초, 분, 시간 등)로 간주되는 기준을 정의하는 객체(Object)의 배열(Array)입니다. 예를 들어, 기본적으로 45초 이상은 1분으로 간주되고, 22시간 이상은 하루로 간주됩니다. 이 기준을 변경하려면 다음과 같이 새로운 thresholds를 전달하면 됩니다.

js
// 엄격한 임계값
var thresholds = [
  { l: 's', r: 1 },
  { l: 'm', r: 1 },
  { l: 'mm', r: 59, d: 'minute' },
  { l: 'h', r: 1 },
  { l: 'hh', r: 23, d: 'hour' },
  { l: 'd', r: 1 },
  { l: 'dd', r: 29, d: 'day' },
  { l: 'M', r: 1 },
  { l: 'MM', r: 11, d: 'month' },
  { l: 'y', r: 1 },
  { l: 'yy', d: 'year' },
];

사용자 정의 임계값 키를 추가하고, 그에 맞춰 로케일을 업데이트할 수도 있습니다.

js
var thresholds = [
  ...,
  { l: 'ss', r: 59, d: 'second' }
]
dayjs.updateLocale('en', {
  relativeTime: {
    ...,
    ss: "%d seconds"
  }
})

rounding은 숫자를 relativeTime 형식 문자열에 적용하기 전에 처리하는 함수(Function)입니다. 이 문자열은 로케일에 정의되어 있습니다. 반올림 방식을 변경하려면 다음과 같이 새로운 rounding 함수를 전달하면 됩니다.

js
// 기본적으로 Math.round
var rounding = Math.floor;
Pager
이전최소 요일 약어
다음달력

MIT 라이선스 하에 배포되었습니다.

Copyright (c) 2020 iamkun

https://day.js.org/docs/en/customization/relative-time

MIT 라이선스 하에 배포되었습니다.

Copyright (c) 2020 iamkun