Constructors

  • Parameters

    • Optionalconfig:
          | string
          | number
          | Dayjs
          | Date

    Returns Dayjs

Methods

  • Returns a cloned Day.js object with a specified amount of time added.

    dayjs().add(7, 'day')// => Dayjs
    

    Units are case insensitive, and support plural and short forms.

    Docs: https://day.js.org/docs/en/manipulate/add

    Parameters

    • value: number
    • Optionalunit: OpUnitType

    Returns Dayjs

  • All Day.js objects are immutable. Still, dayjs#clone can create a clone of the current object if you need one.

    dayjs().clone()// => Dayjs
    dayjs(dayjs('2019-01-25')) // passing a Dayjs object to a constructor will also clone it

    Docs: https://day.js.org/docs/en/parse/dayjs-clone

    Returns Dayjs

  • Get the date of the month.

    dayjs().date()// => 1-31
    

    Docs: https://day.js.org/docs/en/get-set/date

    Returns number

  • Set the date of the month.

    Accepts numbers from 1 to 31. If the range is exceeded, it will bubble up to the months.

    dayjs().date(1)// => Dayjs
    

    Docs: https://day.js.org/docs/en/get-set/date

    Parameters

    • value: number

    Returns Dayjs

  • Get the day of the week.

    Returns numbers from 0 (Sunday) to 6 (Saturday).

    dayjs().day()// 0-6
    

    Docs: https://day.js.org/docs/en/get-set/day

    Returns number

  • Set the day of the week.

    Accepts numbers from 0 (Sunday) to 6 (Saturday). If the range is exceeded, it will bubble up to other weeks.

    dayjs().day(0)// => Dayjs
    

    Docs: https://day.js.org/docs/en/get-set/day

    Parameters

    • value: number

    Returns Dayjs

  • This indicates the difference between two date-time in the specified unit.

    To get the difference in milliseconds, use dayjs#diff

    const date1 = dayjs('2019-01-25')
    const date2 = dayjs('2018-06-05')
    date1.diff(date2) // 20214000000 default milliseconds

    To get the difference in another unit of measurement, pass that measurement as the second argument.

    const date1 = dayjs('2019-01-25')
    date1.diff('2018-06-05', 'month') // 7

    Units are case insensitive, and support plural and short forms.

    Docs: https://day.js.org/docs/en/display/difference

    Parameters

    • date:
          | string
          | number
          | Dayjs
          | Date
    • Optionalunit:
          | "M"
          | "Q"
          | "d"
          | "h"
          | "m"
          | "s"
          | "w"
          | "y"
          | "ms"
          | "date"
          | "second"
          | "month"
          | "week"
          | "millisecond"
          | "minute"
          | "hour"
          | "day"
          | "year"
          | "milliseconds"
          | "seconds"
          | "minutes"
          | "hours"
          | "days"
          | "months"
          | "years"
          | "dates"
          | "weeks"
          | "quarter"
          | "quarters"
    • Optionalfloat: boolean

    Returns number

  • Returns a cloned Day.js object and set it to the end of a unit of time.

    dayjs().endOf('month')// => Dayjs
    

    Units are case insensitive, and support plural and short forms.

    Docs: https://day.js.org/docs/en/manipulate/end-of

    Parameters

    • unit: OpUnitType

    Returns Dayjs

  • Get the formatted date according to the string of tokens passed in.

    To escape characters, wrap them in square brackets (e.g. [MM]).

    dayjs().format()// => current date in ISO8601, without fraction seconds e.g. '2020-04-02T08:02:17-05:00'
    dayjs('2019-01-25').format('[YYYYescape] YYYY-MM-DDTHH:mm:ssZ[Z]')// 'YYYYescape 2019-01-25T00:00:00-02:00Z'
    dayjs('2019-01-25').format('DD/MM/YYYY') // '25/01/2019'

    Docs: https://day.js.org/docs/en/display/format

    Parameters

    • Optionaltemplate: string

    Returns string

  • Parameters

    • compared:
          | string
          | number
          | Dayjs
          | Date
    • OptionalwithoutSuffix: boolean

    Returns string

  • Parameters

    • OptionalwithoutSuffix: boolean

    Returns string

  • String getter, returns the corresponding information getting from Day.js object.

    In general:

    dayjs().get(unit) === dayjs()[unit]()
    

    Units are case insensitive, and support plural and short forms.

    dayjs().get('year')
    dayjs().get('month') // start 0
    dayjs().get('date')

    Docs: https://day.js.org/docs/en/get-set/get

    Parameters

    • unit: UnitType

    Returns number

  • This indicates whether the Day.js object is after the other supplied date-time.

    dayjs().isAfter(dayjs('2011-01-01')) // default milliseconds
    

    If you want to limit the granularity to a unit other than milliseconds, pass it as the second parameter.

    dayjs().isAfter('2011-01-01', 'year')// => boolean
    

    Units are case insensitive, and support plural and short forms.

    Docs: https://day.js.org/docs/en/query/is-after

    Parameters

    • date:
          | string
          | number
          | Dayjs
          | Date
    • Optionalunit: OpUnitType

    Returns boolean

  • This indicates whether the Day.js object is before the other supplied date-time.

    dayjs().isBefore(dayjs('2011-01-01')) // default milliseconds
    

    If you want to limit the granularity to a unit other than milliseconds, pass it as the second parameter.

    dayjs().isBefore('2011-01-01', 'year')// => boolean
    

    Units are case insensitive, and support plural and short forms.

    Docs: https://day.js.org/docs/en/query/is-before

    Parameters

    • date:
          | string
          | number
          | Dayjs
          | Date
    • Optionalunit: OpUnitType

    Returns boolean

  • This indicates whether the Day.js object is the same as the other supplied date-time.

    dayjs().isSame(dayjs('2011-01-01')) // default milliseconds
    

    If you want to limit the granularity to a unit other than milliseconds, pass it as the second parameter.

    dayjs().isSame('2011-01-01', 'year')// => boolean
    

    Docs: https://day.js.org/docs/en/query/is-same

    Parameters

    • date:
          | string
          | number
          | Dayjs
          | Date
    • Optionalunit: OpUnitType

    Returns boolean

  • This returns a boolean indicating whether the Day.js object contains a valid date or not.

    dayjs().isValid()// => boolean
    

    Docs: https://day.js.org/docs/en/parse/is-valid

    Returns boolean

  • Returns string

  • Parameters

    • preset: string | ILocale
    • Optionalobject: Partial<ILocale>

    Returns Dayjs

  • Get the month.

    Months are zero indexed, so January is month 0.

    dayjs().month()// => 0-11
    

    Docs: https://day.js.org/docs/en/get-set/month

    Returns number

  • Set the month.

    Months are zero indexed, so January is month 0.

    Accepts numbers from 0 to 11. If the range is exceeded, it will bubble up to the year.

    dayjs().month(0)// => Dayjs
    

    Docs: https://day.js.org/docs/en/get-set/month

    Parameters

    • value: number

    Returns Dayjs

  • Get the seconds.

    dayjs().second()// => 0-59
    

    Docs: https://day.js.org/docs/en/get-set/second

    Returns number

  • Set the seconds.

    Accepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the minutes.

    dayjs().second(1)// Dayjs
    

    Parameters

    • value: number

    Returns Dayjs

  • Generic setter, accepting unit as first argument, and value as second, returns a new instance with the applied changes.

    In general:

    dayjs().set(unit, value) === dayjs()[unit](value)
    

    Units are case insensitive, and support plural and short forms.

    dayjs().set('date', 1)
    dayjs().set('month', 3) // April
    dayjs().set('second', 30)

    Docs: https://day.js.org/docs/en/get-set/set

    Parameters

    • unit: UnitType
    • value: number

    Returns Dayjs

  • Returns a cloned Day.js object and set it to the start of a unit of time.

    dayjs().startOf('year')// => Dayjs
    

    Units are case insensitive, and support plural and short forms.

    Docs: https://day.js.org/docs/en/manipulate/start-of

    Parameters

    • unit: OpUnitType

    Returns Dayjs

  • Returns a cloned Day.js object with a specified amount of time subtracted.

    dayjs().subtract(7, 'year')// => Dayjs
    

    Units are case insensitive, and support plural and short forms.

    Docs: https://day.js.org/docs/en/manipulate/subtract

    Parameters

    • value: number
    • Optionalunit: OpUnitType

    Returns Dayjs

  • Parameters

    • compared:
          | string
          | number
          | Dayjs
          | Date
    • OptionalwithoutSuffix: boolean

    Returns string

  • To get a copy of the native Date object parsed from the Day.js object use dayjs#toDate.

    dayjs('2019-01-25').toDate()// => Date
    

    Returns Date

  • To serialize as an ISO 8601 string.

    dayjs('2019-01-25').toJSON() // '2019-01-25T02:00:00.000Z'
    

    Docs: https://day.js.org/docs/en/display/as-json

    Returns string

  • Parameters

    • OptionalwithoutSuffix: boolean

    Returns string

  • Returns a string representation of the date.

    dayjs('2019-01-25').toString() // 'Fri, 25 Jan 2019 02:00:00 GMT'
    

    Docs: https://day.js.org/docs/en/display/as-string

    Returns string

  • This returns the Unix timestamp (the number of seconds since the Unix Epoch) of the Day.js object.

    dayjs('2019-01-25').unix() // 1548381600
    

    This value is floored to the nearest second, and does not include a milliseconds component.

    Docs: https://day.js.org/docs/en/display/unix-timestamp

    Returns number

  • This returns the number of milliseconds since the Unix Epoch of the Day.js object.

    dayjs('2019-01-25').valueOf() // 1548381600000
    +dayjs(1548381600000) // 1548381600000

    To get a Unix timestamp (the number of seconds since the epoch) from a Day.js object, you should use Unix Timestamp dayjs#unix().

    Docs: https://day.js.org/docs/en/display/unix-timestamp-milliseconds

    Returns number