Skip to content
Day.js

čeština

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

čeština

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

Vzhled

Sidebar Navigation

Instalace Day.js

Node.js

Prohlížeč

TypeScript

Ke stažení

Analýza

Aktuální čas

Řetězec

Řetězec + Formát

Unix timestamp (milisekund)

Unix Timestamp (sekundy)

Datum

Objekt

Pole (Array)

UTC

Dayjs Clone

Validace

Získávání a Nastavování

Milisekunda

Sekundy

Minuta

Hodina

Den měsíce

Den týdne

Den v týdnu (s ohledem na lokalizaci)

ISO Den týdne

Den v roce

Týden roku

Týden roku (ISO)

Měsíc

Čtvrtletí

Rok

Týdenní rok

ISO rok týdne

Týdny v roce (ISO)

Získání

Set

Maximum

Minimum

Úprava

Přidat

Odečtení

Začátek časové jednotky

Konec období

Local

UTC

UTC offset

Výstup

Formát

Čas od nynějška

Čas od X

Relativní čas od teď

Čas vzhledem k X

Kalendářní čas

Rozdíl

Unix Timestamp (milisekundy)

Unix Timestamp

Počet dní v měsíci

Jako objekt JavaScript Date

Jako pole (Array)

Serializace do JSON

Jako řetězec ve formátu ISO 8601

Jako objekt

Řetězec

Dotaz

Is Before

Is Same

Is After

Je stejný nebo dřívější než

Stejné nebo pozdější

Is Between

Je to objekt Day.js?

Je to přestupný rok

i18n

Načítání lokalizace v NodeJS

Načítání jazykového prostředí podle potřeby.

Globální změna lokalizace

Lokální změna národního prostředí

Zjištění aktuálního locale Day.js

Výpis měsíců a dnů týdne pro aktuální lokalizaci

Přístup k funkcím specifickým pro jazykové prostředí

Plugin

Načítání pluginu podle potřeby

Načítání pluginu podle potřeby

AdvancedFormat

ArraySupport

BadMutable

BigIntSupport

BuddhistEra

Kalendář

CustomParseFormat

DayOfYear

DevHelper

Doba trvání

IsBetween

IsLeapYear

IsSameOrAfter

IsSameOrBefore

IsToday

IsTomorrow

IsYesterday

IsoWeek

IsoWeeksInYear

LocaleData

LocalizedFormat

MinMax

Podpora objektů

PluralGetSet

PreParsePostFormat

QuarterOfYear

RelativeTime

Časové zóny

ToArray

ToObject

UpdateLocale

UTC

weekOfYear

WeekYear

Den týdne

Přizpůsobení

Názvy měsíců

Zkrácené názvy měsíců

Názvy dnů v týdnu

Zkrácené zkratky dnů v týdnu

Krátké Zkratky Dnů v Týdnu

Relativní čas

Kalendář

Doby trvání

Vytváření

Klon

Zlidštění

Formátování

Milisekundy

Sekundy

Minuty (0 - 59)

Hodiny

Dny

Týdny

Měsíce

Roky

Přidání času k trvání

Odečtení času

Použití trvání s funkcí `diff`

Jako jednotka času

Získání časové jednotky

Ve formátu JSON

Je objekt typu Duration

Jako řetězec podle ISO 8601

Locale

Časové pásmo

Parsuje v časovém pásmu

Konverze na časové pásmo

Odhad časového pásma uživatele

Nastavení výchozího časového pásma

Na této stránce

Relativní čas ​

Locale#relativeTime by měl být objekt obsahující řetězce, které se použijí pro nahrazení v dayjs#from.

TIP

Pro správnou funkčnost je vyžadován plugin UpdateLocale.

js
dayjs.extend(updateLocale);

dayjs.updateLocale('en', {
  relativeTime: {
    future: 'za %s',
    past: 'před %s',
    s: 'pár sekund',
    m: 'minutu',
    mm: '%d minut',
    h: 'hodinu',
    hh: '%d hodin',
    d: 'den',
    dd: '%d dní',
    M: 'měsíc',
    MM: '%d měsíců',
    y: 'rok',
    yy: '%d let',
  },
});

Locale#relativeTime.future definuje předponu/příponu pro budoucí časové údaje. Locale#relativeTime.past definuje předponu/příponu pro časové údaje v minulosti.

Pro ostatní případy se jeden znak vztahuje na jednotné číslo a dva znaky na množné číslo.

Rozšířené zpracování tokenů ​

Pokud lokalizace vyžaduje složitější zpracování tokenu, lze token definovat jako funkci s následujícím podpisem namísto řetězce. Funkce musí vracet řetězec.

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

Argument number představuje počet jednotek pro daný klíč. Například pro m je number počet minut.

Argument withoutSuffix bude true, pokud se token zobrazí bez přípony, a false, pokud se zobrazí s příponou. (Důvodem pro obrácenou logiku je, že výchozí chování je zobrazení s příponou.)

Argument key odkazuje na klíč pro nahrazení v objektu Locale#relativeTime. (např. s, m, mm, h atd.)

Argument isFuture bude true, pokud se použije budoucí přípona/předpona, a false, pokud se použije minulá předpona/přípona.

Hranice a zaokrouhlování relativního času ​

Při použití tohoto pluginu můžete předat konfigurační objekt pro úpravu prahových hodnot a zaokrouhlování.

js
var config = {
  thresholds: [{}],
  rounding: function
}
dayjs.extend(relativeTime, config)

thresholds je pole objektů, které definují, kdy se jednotka považuje za minutu, hodinu atd. Například ve výchozím nastavení je více než 45 sekund považováno za minutu, více než 22 hodin je považováno za den atd. Chcete-li toto chování změnit, můžete předat nové hodnoty v poli thresholds následujícím způsobem.

js
// Striktní prahové hodnoty
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' },
];

Můžete také přidat vlastní klíč prahových hodnot a odpovídajícím způsobem aktualizovat lokalizaci.

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

rounding je funkce pro zpracování čísla před jeho předáním do formátovacího řetězce relativeTime definovaného v lokalizaci. Pro změnu zaokrouhlování můžete předat novou funkci rounding následujícím způsobem.

js
// Math.round ve výchozím nastavení
var rounding = Math.floor;
Pager
Předchozí stránkaKrátké Zkratky Dnů v Týdnu
Další stránkaKalendář

Vydáno pod licencí MIT.

Copyright (c) 2020 iamkun

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

Vydáno pod licencí MIT.

Copyright (c) 2020 iamkun